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) klog.Warningf("Terminating all watchers from cacher %v", objectType)
} }
i.allWatchers.terminateAll(done) i.allWatchers.terminateAll(done)
for index, watchers := range i.valueWatchers { for _, watchers := range i.valueWatchers {
watchers.terminateAll(done) 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 // As we don't need a high precision here, we keep all watchers timeout within a