# parsl.dataflow.states.States¶

class parsl.dataflow.states.States(value)[source]

Enumerates the states a parsl task may be in.

These states occur inside the task record for a task inside a DataFlowKernel and in the monitoring database.

In a single successful task execution, tasks will progress in this sequence:

pending -> launched -> running -> exec_done

Other states represent deviations from this path, either due to failures, or to deliberate changes to how tasks are executed (for example due to join_app, or memoization).

All tasks should end up in one of the states listed in FINAL_STATES.

__init__()[source]

Initialize self. See help(type(self)) for accurate signature.

Attributes

 dep_fail Dependencies of this task failed, so it is marked as failed without even an attempt to launch it. exec_done Task has been executed successfully. fail_retryable Task has failed, but can be retried failed Task has failed and no more attempts will be made to run it. joining Task is a join_app, joining on internal tasks. launched Task has been passed to a ParslExecutor for execution. memo_done Task was found in the memoization table, so it is marked as done without even an attempt to launch it. pending Task is known to parsl but cannot run yet. running Task is running on a resource. unsched
dep_fail = 5[source]

Dependencies of this task failed, so it is marked as failed without even an attempt to launch it.

exec_done = 3[source]

fail_retryable = 8[source]

Task has failed, but can be retried

failed = 4[source]

Task has failed and no more attempts will be made to run it.

joining = 10[source]

Task is a join_app, joining on internal tasks. The task has run its own Python code, and is now waiting on other tasks before it can make further progress (to a done/failed state).

launched = 7[source]

Task has been passed to a ParslExecutor for execution.

memo_done = 9[source]

Task was found in the memoization table, so it is marked as done without even an attempt to launch it.

pending = 0[source]

Task is known to parsl but cannot run yet. Usually, a task cannot run because it is waiting for dependency tasks to complete.

running = 2[source]

Task is running on a resource. This state is special - a DFK task record never goes to States.running state; but the monitoring database may represent a task in this state based on non-DFK information received from monitor_wrapper.

unsched = -1[source]