From ee5d86ea5d9b63d17728910f9de9689980d1e75c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Bidoul?= Date: Tue, 2 May 2023 19:08:42 +0200 Subject: [PATCH] Handle cancelled state in job runner --- queue_job/jobrunner/channels.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/queue_job/jobrunner/channels.py b/queue_job/jobrunner/channels.py index 1b306d723d..2b6f78483f 100644 --- a/queue_job/jobrunner/channels.py +++ b/queue_job/jobrunner/channels.py @@ -7,7 +7,7 @@ from weakref import WeakValueDictionary from ..exception import ChannelNotFound -from ..job import DONE, ENQUEUED, FAILED, PENDING, STARTED, WAIT_DEPENDENCIES +from ..job import CANCELLED, DONE, ENQUEUED, FAILED, PENDING, STARTED, WAIT_DEPENDENCIES NOT_DONE = (WAIT_DEPENDENCIES, PENDING, ENQUEUED, STARTED, FAILED) @@ -1046,7 +1046,7 @@ def notify( job = ChannelJob(db_name, channel, uuid, seq, date_created, priority, eta) self._jobs_by_uuid[uuid] = job # state transitions - if not state or state == DONE: + if not state or state in (DONE, CANCELLED): job.channel.set_done(job) elif state == PENDING: job.channel.set_pending(job)