Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Job State Transitions

Jobs progress through a defined lifecycle:

stateDiagram-v2
    [*] --> uninitialized
    uninitialized --> ready: initialize_jobs called
    uninitialized --> blocked: initialize_jobs called<br/>(dependencies not met)

    ready --> pending: job runner claims job
    blocked --> ready: dependency completed
    pending --> running: job runner starts job

    running --> completed: exit code 0
    running --> failed: exit code != 0
    running --> canceled: explicit cancellation
    running --> terminated: explicit termination

    completed --> [*]
    failed --> [*]
    canceled --> [*]
    terminated --> [*]

State Descriptions

  • uninitialized (0) - Job created but dependencies not evaluated
  • blocked (1) - Waiting for dependencies to complete
  • ready (2) - All dependencies satisfied, ready for execution
  • pending (3) - Job claimed by runner
  • running (4) - Currently executing
  • completed (5) - Finished successfully (exit code 0)
  • failed (6) - Finished with error (exit code != 0)
  • canceled (7) - Explicitly canceled by user or system
  • terminated (8) - Explicitly terminated by system, such as for checkpointing before wall-time timeout
  • disabled (9) - Explicitly disabled by user