From 8798a61ba4c71614e82d6fd95ea23b121278143a Mon Sep 17 00:00:00 2001 From: Andrew Thornton Date: Tue, 31 Dec 2019 17:48:26 +0000 Subject: [PATCH] Cancel pool workers when removed --- modules/queue/manager.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/queue/manager.go b/modules/queue/manager.go index d26836e7c83..88b26448486 100644 --- a/modules/queue/manager.go +++ b/modules/queue/manager.go @@ -181,8 +181,12 @@ func (q *ManagedQueue) CancelWorkers(pid int64) { // RemoveWorkers deletes pooled workers with pid func (q *ManagedQueue) RemoveWorkers(pid int64) { q.mutex.Lock() + pw, ok := q.PoolWorkers[pid] delete(q.PoolWorkers, pid) q.mutex.Unlock() + if ok && pw.Cancel != nil { + pw.Cancel() + } } // AddWorkers adds workers to the queue if it has registered an add worker function