Commit a30c0f47 authored by Dr. Stefan Schimanski's avatar Dr. Stefan Schimanski

apiserver: fix Cacher.Stop() race

parent 21062657
......@@ -649,13 +649,15 @@ func (c *Cacher) isStopped() bool {
}
func (c *Cacher) Stop() {
// TODO : Do not check for isStopped (and return) when PR
// https://github.com/kubernetes/kubernetes/pull/50690
// merges as that shuts down storage properly
// avoid stopping twice (note: cachers are shared with subresources)
if c.isStopped() {
return
}
c.stopLock.Lock()
if c.stopped {
// avoid that it was locked meanwhile as isStopped only read-locks
return
}
c.stopped = true
c.stopLock.Unlock()
close(c.stopCh)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment