From 7bcebe98bbb368fc1cf4d887407381240e180ca7 Mon Sep 17 00:00:00 2001 From: Hemant Kumar Date: Fri, 31 May 2019 15:53:15 -0400 Subject: [PATCH] Add dangling volume as uncertain --- .../operationexecutor/operation_generator.go | 26 +++++++------------ 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/pkg/volume/util/operationexecutor/operation_generator.go b/pkg/volume/util/operationexecutor/operation_generator.go index 8510bec483b..c2812e02233 100644 --- a/pkg/volume/util/operationexecutor/operation_generator.go +++ b/pkg/volume/util/operationexecutor/operation_generator.go @@ -334,24 +334,18 @@ func (og *operationGenerator) GenerateAttachVolumeFunc( volumeToAttach.VolumeSpec, volumeToAttach.NodeName) if attachErr != nil { + uncertainNode := volumeToAttach.NodeName if derr, ok := attachErr.(*volerr.DanglingAttachError); ok { - addErr := actualStateOfWorld.MarkVolumeAsAttached( - v1.UniqueVolumeName(""), - originalSpec, - derr.CurrentNode, - derr.DevicePath) - - if addErr != nil { - klog.Errorf("AttachVolume.MarkVolumeAsAttached failed to fix dangling volume error for volume %q with %s", volumeToAttach.VolumeName, addErr) - } - - } else { - addErr := actualStateOfWorld.MarkVolumeAsUncertain( - v1.UniqueVolumeName(""), originalSpec, volumeToAttach.NodeName) - if addErr != nil { - klog.Errorf("AttachVolume.MarkVolumeAsUncertain fail to add the volume %q to actual state with %s", volumeToAttach.VolumeName, addErr) - } + uncertainNode = derr.CurrentNode } + addErr := actualStateOfWorld.MarkVolumeAsUncertain( + v1.UniqueVolumeName(""), + originalSpec, + uncertainNode) + if addErr != nil { + klog.Errorf("AttachVolume.MarkVolumeAsUncertain fail to add the volume %q to actual state with %s", volumeToAttach.VolumeName, addErr) + } + // On failure, return error. Caller will log and retry. return volumeToAttach.GenerateError("AttachVolume.Attach failed", attachErr) }