From 62d2979e1b21ff7a0c5207b78b260dd5fef10099 Mon Sep 17 00:00:00 2001 From: Random-Liu Date: Sun, 17 Jul 2016 17:28:30 -0700 Subject: [PATCH] Make kubelet continue cleanup when there is noncritical error. --- pkg/kubelet/kubelet.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/pkg/kubelet/kubelet.go b/pkg/kubelet/kubelet.go index 13b72f3523c..6cae6d005e6 100644 --- a/pkg/kubelet/kubelet.go +++ b/pkg/kubelet/kubelet.go @@ -2074,20 +2074,23 @@ func (kl *Kubelet) HandlePodCleanups() error { // deleted pods. err = kl.cleanupOrphanedPodDirs(allPods, runningPods) if err != nil { + // We want all cleanup tasks to be run even if one of them failed. So + // we just log an error here and continue other cleanup tasks. + // This also applies to the other clean up tasks. glog.Errorf("Failed cleaning up orphaned pod directories: %v", err) - return err } // Remove any orphaned mirror pods. kl.podManager.DeleteOrphanedMirrorPods() // Clear out any old bandwidth rules - if err = kl.cleanupBandwidthLimits(allPods); err != nil { - return err + err = kl.cleanupBandwidthLimits(allPods) + if err != nil { + glog.Errorf("Failed cleaning up bandwidth limits: %v", err) } kl.backOff.GC() - return err + return nil } // podKiller launches a goroutine to kill a pod received from the channel if