Merge pull request #79599 from tedyu/cacher-clear-watchers

Clear valueWatchers instead of removing every entry using a loop
This commit is contained in:
Kubernetes Prow Robot 2019-07-01 09:43:47 -07:00 committed by GitHub
commit 1b259bf75a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -154,10 +154,10 @@ func (i *indexedWatchers) terminateAll(objectType reflect.Type, done func(*cache
klog.Warningf("Terminating all watchers from cacher %v", objectType)
}
i.allWatchers.terminateAll(done)
for index, watchers := range i.valueWatchers {
for _, watchers := range i.valueWatchers {
watchers.terminateAll(done)
delete(i.valueWatchers, index)
}
i.valueWatchers = map[string]watchersMap{}
}
// As we don't need a high precision here, we keep all watchers timeout within a