X-Git-Url: https://code.grnet.gr/git/ganeti-local/blobdiff_plain/d21d09d6818296c3965d230397bf2a75c27eb60b..5431b2e45a31239ed3190503a872d5cedc8f58a4:/lib/jqueue.py diff --git a/lib/jqueue.py b/lib/jqueue.py index 4b9f86d..7e396b0 100644 --- a/lib/jqueue.py +++ b/lib/jqueue.py @@ -359,6 +359,8 @@ class _JobQueueWorker(workerpool.BaseWorker): queue.acquire() try: + if op.status == constants.OP_STATUS_CANCELED: + raise CancelJob() assert op.status == constants.OP_STATUS_QUEUED job.run_op_index = idx op.status = constants.OP_STATUS_WAITLOCK @@ -1120,7 +1122,7 @@ class JobQueue(object): """ try: for op in job.ops: - op.status = constants.OP_STATUS_ERROR + op.status = constants.OP_STATUS_CANCELED op.result = "Job canceled by request" finally: self.UpdateJobUnlocked(job) @@ -1178,7 +1180,7 @@ class JobQueue(object): logging.debug("Job %s not found", job_id) return False - return self._ArchiveJobUnlocked([job]) == 1 + return self._ArchiveJobsUnlocked([job]) == 1 @utils.LockedMethod @_RequireOpenQueue