From d557fc16c6e2f1497e4cd6410e6e09a40a9446cd Mon Sep 17 00:00:00 2001 From: bmc-msft <41130664+bmc-msft@users.noreply.github.com> Date: Wed, 26 May 2021 18:42:21 -0400 Subject: [PATCH] mark tasks that are stopped that never started with an error (#935) --- src/api-service/__app__/onefuzzlib/tasks/main.py | 5 +++++ src/api-service/__app__/timer_tasks/__init__.py | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/api-service/__app__/onefuzzlib/tasks/main.py b/src/api-service/__app__/onefuzzlib/tasks/main.py index ca4c12731..2e28ac95a 100644 --- a/src/api-service/__app__/onefuzzlib/tasks/main.py +++ b/src/api-service/__app__/onefuzzlib/tasks/main.py @@ -195,6 +195,11 @@ class Task(BASE_TASK, ORMMixin): ) return + if self.state not in TaskState.has_started(): + self.mark_failed( + Error(code=ErrorCode.TASK_FAILED, errors=["task never started"]) + ) + self.set_state(TaskState.stopping) def mark_failed( diff --git a/src/api-service/__app__/timer_tasks/__init__.py b/src/api-service/__app__/timer_tasks/__init__.py index 92452a2d1..aa3f6bcc2 100644 --- a/src/api-service/__app__/timer_tasks/__init__.py +++ b/src/api-service/__app__/timer_tasks/__init__.py @@ -19,7 +19,7 @@ def main(mytimer: func.TimerRequest, dashboard: func.Out[str]) -> None: # noqa: expired_tasks = Task.search_expired() for task in expired_tasks: logging.info("stopping expired task: %s", task.job_id) - task.stopping() + task.mark_stopping() expired_jobs = Job.search_expired() for job in expired_jobs: