Merge pull request #77773 from DaiHao/daemon

fix daemon set rolling update hang
This commit is contained in:
Kubernetes Prow Robot 2019-05-20 03:11:12 -07:00 committed by GitHub
commit 6ba13bf151
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -535,6 +535,15 @@ func (dsc *DaemonSetsController) updatePod(old, cur interface{}) {
return
}
if curPod.DeletionTimestamp != nil {
// when a pod is deleted gracefully its deletion timestamp is first modified to reflect a grace period,
// and after such time has passed, the kubelet actually deletes it from the store. We receive an update
// for modification of the deletion timestamp and expect an ds to create more replicas asap, not wait
// until the kubelet actually deletes the pod.
dsc.deletePod(curPod)
return
}
curControllerRef := metav1.GetControllerOf(curPod)
oldControllerRef := metav1.GetControllerOf(oldPod)
controllerRefChanged := !reflect.DeepEqual(curControllerRef, oldControllerRef)