From 7978de129a2dadff6e77e274e67a9fa5ba551ba8 Mon Sep 17 00:00:00 2001 From: maaktweluit <10008353+maaktweluit@users.noreply.github.com> Date: Tue, 13 Aug 2019 14:49:29 +0200 Subject: [PATCH] Moved task status lists from taskmanager to taskstate --- golem/task/taskmanager.py | 24 ++++-------------------- golem/task/taskstate.py | 3 +++ 2 files changed, 7 insertions(+), 20 deletions(-) diff --git a/golem/task/taskmanager.py b/golem/task/taskmanager.py index e5125453c6..1d48bce420 100644 --- a/golem/task/taskmanager.py +++ b/golem/task/taskmanager.py @@ -129,22 +129,6 @@ def __init__( # pylint: disable=too-many-arguments resource_manager ) - self.CREATING_STATUS = frozenset([ - TaskStatus.creating, - TaskStatus.errorCreating, - ]) - self.ACTIVE_STATUS = frozenset([ - TaskStatus.computing, - TaskStatus.starting, - TaskStatus.waiting, - ]) - self.FINISHED_STATUS = frozenset([ - TaskStatus.finished, - TaskStatus.aborted, - TaskStatus.timeout, - TaskStatus.restarted, - ]) - self.comp_task_keeper = CompTaskKeeper( tasks_dir, ) @@ -398,11 +382,11 @@ def got_wants_to_compute(self, def task_being_created(self, task_id: str) -> bool: task_status = self.tasks_states[task_id].status - return task_status in self.CREATING_STATUS + return task_status.is_creating() def task_finished(self, task_id: str) -> bool: task_status = self.tasks_states[task_id].status - return task_status in self.FINISHED_STATUS + return task_status.is_completed() def task_needs_computation(self, task_id: str) -> bool: if self.task_being_created(task_id) or self.task_finished(task_id): @@ -774,7 +758,7 @@ def verification_finished_(): verification_finished() - if self.tasks_states[task_id].status in self.ACTIVE_STATUS: + if self.tasks_states[task_id].status.is_active(): if not self.tasks[task_id].finished_computation(): self.tasks_states[task_id].status = TaskStatus.computing else: @@ -890,7 +874,7 @@ def check_timeouts(self): nodes_with_timeouts = [] for t in list(self.tasks.values()): th = t.header - if self.tasks_states[th.task_id].status not in self.ACTIVE_STATUS: + if not self.tasks_states[th.task_id].status.is_active(): continue cur_time = int(get_timestamp_utc()) # Check subtask timeout diff --git a/golem/task/taskstate.py b/golem/task/taskstate.py index ede45c428b..c63ebbb2bc 100644 --- a/golem/task/taskstate.py +++ b/golem/task/taskstate.py @@ -165,6 +165,9 @@ class TaskStatus(Enum): timeout = "Timeout" restarted = "Restart" + def is_creating(self) -> bool: + return self in [self.creating, self.errorCreating] + def is_completed(self) -> bool: return self in [self.finished, self.aborted, self.timeout, self.restarted]