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

Make RetryWatcher sleep interruptible
This commit is contained in:
Kubernetes Prow Robot 2022-01-05 06:58:34 -08:00 committed by GitHub
commit 04f2beea8a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

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)