From a1063c924bfbda6e7d24818858e78fa387c93b72 Mon Sep 17 00:00:00 2001 From: Pingan2017 Date: Wed, 1 Jul 2020 17:11:29 +0800 Subject: [PATCH] fix loop bug for verify attached volume --- .../util/operationexecutor/operation_executor.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/pkg/volume/util/operationexecutor/operation_executor.go b/pkg/volume/util/operationexecutor/operation_executor.go index 246fb404f3d..6d5cbf24bfc 100644 --- a/pkg/volume/util/operationexecutor/operation_executor.go +++ b/pkg/volume/util/operationexecutor/operation_executor.go @@ -700,6 +700,7 @@ func (oe *operationExecutor) VerifyVolumesAreAttached( volumeSpecMapByPlugin := make(map[string]map[*volume.Spec]v1.UniqueVolumeName) for node, nodeAttachedVolumes := range attachedVolumes { + needIndividualVerifyVolumes := []AttachedVolume{} for _, volumeAttached := range nodeAttachedVolumes { if volumeAttached.VolumeSpec == nil { klog.Errorf("VerifyVolumesAreAttached: nil spec for volume %s", volumeAttached.VolumeName) @@ -753,12 +754,12 @@ func (oe *operationExecutor) VerifyVolumesAreAttached( volumeSpecMapByPlugin[pluginName] = volumeSpecMap continue } - // If node doesn't support Bulk volume polling it is best to poll individually - nodeError := oe.VerifyVolumesAreAttachedPerNode(nodeAttachedVolumes, node, actualStateOfWorld) - if nodeError != nil { - klog.Errorf("VerifyVolumesAreAttached failed for volumes %v, node %q with error %v", nodeAttachedVolumes, node, nodeError) - } + needIndividualVerifyVolumes = append(needIndividualVerifyVolumes, volumeAttached) + } + nodeError := oe.VerifyVolumesAreAttachedPerNode(needIndividualVerifyVolumes, node, actualStateOfWorld) + if nodeError != nil { + klog.Errorf("VerifyVolumesAreAttached failed for volumes %v, node %q with error %v", needIndividualVerifyVolumes, node, nodeError) } }