diff --git a/pkg/controller/resourcequota/resource_quota_controller.go b/pkg/controller/resourcequota/resource_quota_controller.go index b2ae6d1f6e2..e341e1cde55 100644 --- a/pkg/controller/resourcequota/resource_quota_controller.go +++ b/pkg/controller/resourcequota/resource_quota_controller.go @@ -237,15 +237,13 @@ func (rq *ResourceQuotaController) addQuota(obj interface{}) { // worker runs a worker thread that just dequeues items, processes them, and marks them done. func (rq *ResourceQuotaController) worker(queue workqueue.RateLimitingInterface) func() { workFunc := func() bool { - - rq.workerLock.RLock() - defer rq.workerLock.RUnlock() - key, quit := queue.Get() if quit { return true } defer queue.Done(key) + rq.workerLock.RLock() + defer rq.workerLock.RUnlock() err := rq.syncHandler(key.(string)) if err == nil { queue.Forget(key)