mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-03 19:58:17 +00:00 
			
		
		
		
	Merge pull request #34694 from gmarek/deleted_final_state_unknown
Automatic merge from submit-queue Handle DeletedFinalStateUnknown in NodeController Fix #34692 ```release-note Fix panic in NodeController caused by receiving DeletedFinalStateUnknown object from the cache. ``` cc @davidopp
This commit is contained in:
		@@ -294,7 +294,20 @@ func NewNodeController(
 | 
			
		||||
					return
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				node := obj.(*api.Node)
 | 
			
		||||
				node, isNode := obj.(*api.Node)
 | 
			
		||||
				// We can get DeletedFinalStateUnknown instead of *api.Node here and we need to handle that correctly. #34692
 | 
			
		||||
				if !isNode {
 | 
			
		||||
					deletedState, ok := obj.(cache.DeletedFinalStateUnknown)
 | 
			
		||||
					if !ok {
 | 
			
		||||
						glog.Errorf("Received unexpected object: %v", obj)
 | 
			
		||||
						return
 | 
			
		||||
					}
 | 
			
		||||
					node, ok = deletedState.Obj.(*api.Node)
 | 
			
		||||
					if !ok {
 | 
			
		||||
						glog.Errorf("DeletedFinalStateUnknown contained non-Node object: %v", deletedState.Obj)
 | 
			
		||||
						return
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
				if err := nc.cidrAllocator.ReleaseCIDR(node); err != nil {
 | 
			
		||||
					glog.Errorf("Error releasing CIDR: %v", err)
 | 
			
		||||
				}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user