Merge pull request #93709 from ash2k/ash2k/interruptible-sleep

Make RetryWatcher sleep interruptible

Kubernetes-commit: 04f2beea8abfb8ece2fb4fdd4e3ecc694caf2494
This commit is contained in:
Kubernetes Publisher 2022-01-05 06:58:34 -08:00
commit 255c796513

View File

@ -268,7 +268,13 @@ func (rw *RetryWatcher) receive() {
return
}
time.Sleep(retryAfter)
timer := time.NewTimer(retryAfter)
select {
case <-ctx.Done():
timer.Stop()
return
case <-timer.C:
}
klog.V(4).Infof("Restarting RetryWatcher at RV=%q", rw.lastResourceVersion)
}, rw.minRestartDelay)