mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-29 06:27:05 +00:00
Merge pull request #90348 from misterikkit/vsphere-race
Fix race in vsphere cloud provider
This commit is contained in:
commit
319db5975b
@ -1071,11 +1071,11 @@ func (vs *VSphere) DisksAreAttached(nodeVolumes map[k8stypes.NodeName][]string)
|
|||||||
dcNodes[VC_DC] = append(dcNodes[VC_DC], nodeName)
|
dcNodes[VC_DC] = append(dcNodes[VC_DC], nodeName)
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, nodes := range dcNodes {
|
for _, nodeNames := range dcNodes {
|
||||||
localAttachedMap := make(map[string]map[string]bool)
|
localAttachedMap := make(map[string]map[string]bool)
|
||||||
localAttachedMaps = append(localAttachedMaps, localAttachedMap)
|
localAttachedMaps = append(localAttachedMaps, localAttachedMap)
|
||||||
// Start go routines per VC-DC to check disks are attached
|
// Start go routines per VC-DC to check disks are attached
|
||||||
go func() {
|
go func(nodes []k8stypes.NodeName) {
|
||||||
nodesToRetryLocal, err := vs.checkDiskAttached(ctx, nodes, nodeVolumes, localAttachedMap, retry)
|
nodesToRetryLocal, err := vs.checkDiskAttached(ctx, nodes, nodeVolumes, localAttachedMap, retry)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if !vclib.IsManagedObjectNotFoundError(err) {
|
if !vclib.IsManagedObjectNotFoundError(err) {
|
||||||
@ -1089,7 +1089,7 @@ func (vs *VSphere) DisksAreAttached(nodeVolumes map[k8stypes.NodeName][]string)
|
|||||||
nodesToRetry = append(nodesToRetry, nodesToRetryLocal...)
|
nodesToRetry = append(nodesToRetry, nodesToRetryLocal...)
|
||||||
nodesToRetryMutex.Unlock()
|
nodesToRetryMutex.Unlock()
|
||||||
wg.Done()
|
wg.Done()
|
||||||
}()
|
}(nodeNames)
|
||||||
wg.Add(1)
|
wg.Add(1)
|
||||||
}
|
}
|
||||||
wg.Wait()
|
wg.Wait()
|
||||||
|
Loading…
Reference in New Issue
Block a user