diff --git a/manager/orchestrator/taskreaper/task_reaper.go b/manager/orchestrator/taskreaper/task_reaper.go index 1c93b77fbe..3bdd8b4220 100644 --- a/manager/orchestrator/taskreaper/task_reaper.go +++ b/manager/orchestrator/taskreaper/task_reaper.go @@ -188,6 +188,9 @@ func (tr *TaskReaper) tick() { for dirty := range tr.dirty { service := store.GetService(tx, dirty.ServiceID) if service == nil { + // If the service can't be found, assume that it was deleted + // and remove the slot from the dirty list. + delete(tr.dirty, dirty) continue }