mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-04 04:08:16 +00:00 
			
		
		
		
	Attach/detach controller: fix potential race in constructor
This commit is contained in:
		@@ -103,20 +103,6 @@ func NewAttachDetachController(
 | 
				
			|||||||
		cloud:      cloud,
 | 
							cloud:      cloud,
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	podInformer.Informer().AddEventHandler(kcache.ResourceEventHandlerFuncs{
 | 
					 | 
				
			||||||
		AddFunc:    adc.podAdd,
 | 
					 | 
				
			||||||
		UpdateFunc: adc.podUpdate,
 | 
					 | 
				
			||||||
		DeleteFunc: adc.podDelete,
 | 
					 | 
				
			||||||
	})
 | 
					 | 
				
			||||||
	adc.podsSynced = podInformer.Informer().HasSynced
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	nodeInformer.Informer().AddEventHandler(kcache.ResourceEventHandlerFuncs{
 | 
					 | 
				
			||||||
		AddFunc:    adc.nodeAdd,
 | 
					 | 
				
			||||||
		UpdateFunc: adc.nodeUpdate,
 | 
					 | 
				
			||||||
		DeleteFunc: adc.nodeDelete,
 | 
					 | 
				
			||||||
	})
 | 
					 | 
				
			||||||
	adc.nodesSynced = nodeInformer.Informer().HasSynced
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	if err := adc.volumePluginMgr.InitPlugins(plugins, adc); err != nil {
 | 
						if err := adc.volumePluginMgr.InitPlugins(plugins, adc); err != nil {
 | 
				
			||||||
		return nil, fmt.Errorf("Could not initialize volume plugins for Attach/Detach Controller: %+v", err)
 | 
							return nil, fmt.Errorf("Could not initialize volume plugins for Attach/Detach Controller: %+v", err)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
@@ -153,6 +139,20 @@ func NewAttachDetachController(
 | 
				
			|||||||
		podInformer.Lister(),
 | 
							podInformer.Lister(),
 | 
				
			||||||
		adc.desiredStateOfWorld)
 | 
							adc.desiredStateOfWorld)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						podInformer.Informer().AddEventHandler(kcache.ResourceEventHandlerFuncs{
 | 
				
			||||||
 | 
							AddFunc:    adc.podAdd,
 | 
				
			||||||
 | 
							UpdateFunc: adc.podUpdate,
 | 
				
			||||||
 | 
							DeleteFunc: adc.podDelete,
 | 
				
			||||||
 | 
						})
 | 
				
			||||||
 | 
						adc.podsSynced = podInformer.Informer().HasSynced
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						nodeInformer.Informer().AddEventHandler(kcache.ResourceEventHandlerFuncs{
 | 
				
			||||||
 | 
							AddFunc:    adc.nodeAdd,
 | 
				
			||||||
 | 
							UpdateFunc: adc.nodeUpdate,
 | 
				
			||||||
 | 
							DeleteFunc: adc.nodeDelete,
 | 
				
			||||||
 | 
						})
 | 
				
			||||||
 | 
						adc.nodesSynced = nodeInformer.Informer().HasSynced
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return adc, nil
 | 
						return adc, nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user