ecflow.State

class ecflow.State

Bases: enum

Each node can have a status, which reflects the life cycle of a node.

It varies as follows:

  • When the definition file is loaded into the ecflow_server the task status is unknown

  • After begin command the task s are either queued, complete, aborted or suspended , a suspended task means that the task is really queued but it must be resumed by the user first before it can be submitted. See ecflow.DState

  • Once the dependencies are resolved a task is submitted and placed into the submitted state, however if the submission fails, the task is placed in a aborted state.

  • On a successful submission the task is placed into the active state

  • Before a job ends, it may send other message to the server such as: Set an event, Change a meter, Change a label, send a message to log file

Jobs end by becoming either complete or aborted

State.aborted = ecflow.State.aborted
State.active = ecflow.State.active
State.complete = ecflow.State.complete
State.names = {'aborted': ecflow.State.aborted, 'active': ecflow.State.active, 'complete': ecflow.State.complete, 'queued': ecflow.State.queued, 'submitted': ecflow.State.submitted, 'unknown': ecflow.State.unknown}
State.queued = ecflow.State.queued
State.submitted = ecflow.State.submitted
State.unknown = ecflow.State.unknown
State.values = {0: ecflow.State.unknown, 1: ecflow.State.complete, 2: ecflow.State.queued, 3: ecflow.State.aborted, 4: ecflow.State.submitted, 5: ecflow.State.active}