Skip to content

Commit 6fc1c84

Browse files
authored
Merge pull request #214 from StackStorm/docs_fail_fast
Expand docs to explain fail-fast design
2 parents 7dca476 + fc5f599 commit 6fc1c84

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

docs/source/languages/orquesta.rst

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,22 @@ transition will be represented as an outbound edge of the current task. When the
101101
specified in ``when`` of the transition is met, the next set of tasks under ``do`` will be invoked.
102102
If there are no more outbound edges identified, then the workflow execution is complete.
103103

104+
The Orquesta workflow engine is designed to fail fast and terminate the execution of the
105+
workflow when a task fails and no remediation for the failed task is defined. If the failed
106+
task has no transition for that failure condition, then the workflow will stop as soon as
107+
any in-progress tasks are completed. To be more specific, if there are multiple parallel branches
108+
and a task failed in one branch with no transition defined for the failure, then the workflow
109+
engine will wait for all currently running tasks in the other branches to finish and then
110+
terminate the workflow. No other tasks from any branches will be queued or scheduled after the
111+
workflow is terminated. This design allows users to quickly identify and address problems during
112+
runtime without waiting for the other tasks in other branches to complete. The users can
113+
quickly fix the problem and either rerun the workflow from the beginning or from where the
114+
workflow failed.
115+
116+
.. note::
117+
The fail fast design of Orquesta is different to Mistral workflows, therefore when migrating
118+
from Mistral to Orquesta a re-design may be required.
119+
104120
Each task defines what **StackStorm** action to execute, the policies on action execution, and
105121
what happens after the task completes. All of the variables defined and published up to this point
106122
(aka context) are accessible to the task. At its simplest, the task executes the action and passes

0 commit comments

Comments
 (0)