view OrthancServer/Resources/ImplementationNotes/JobsEngineStates.dot @ 5410:16cbfefa15e9

Solved a deadlock related to the Job Engine events and plugins
author Alain Mazy <am@osimis.io>
date Tue, 07 Nov 2023 12:52:37 +0100
parents d25f4c0fa160
children
line wrap: on
line source

// dot -Tpdf JobsEngineStates.dot -o JobsEngineStates.pdf

digraph G
{
  rankdir="LR";
  init [shape=point];
  failure, success [shape=doublecircle];

  // Internal transitions
  init -> pending;
  pending -> running;
  running -> success;
  running -> failure;
  running -> retry;
  retry -> pending [label="timeout"];

  // External actions
  failure -> pending  [label="Resubmit()" fontcolor="red"];
  paused -> pending  [label="Resume()" fontcolor="red"];
  pending -> paused  [label="Pause()" fontcolor="red"];
  retry -> paused  [label="Pause()" fontcolor="red"];
  running -> paused  [label="Pause()" fontcolor="red"];

  paused -> failure  [label="Cancel()" fontcolor="red"];
  pending -> failure  [label="Cancel()" fontcolor="red"];
  retry -> failure  [label="Cancel()" fontcolor="red"];
  running -> failure  [label="Cancel()" fontcolor="red"];
}