Changes

Jump to: navigation, search

Template:July2023Upgrade

4 bytes added, 1 February
Updated Workflow Behavior
Updated the behavior of workflows to run in a serial, single-threaded manner where child workflows are triggered during the processing of a workflow. Previously when stepping through a workflow, if another workflow was triggered, a new thread would be created to process the child workflow simultaneously and asynchronously, as the original system thread would then return to the original workflow and continue to step through its tasks without waiting on the child workflow to complete. This could lead to inconsistent results if the system was configured to run multiple workflows against the same object, or if the order of operations of their tasks needed to be preserved, but results would vary due to race conditions of the workflows.
After this upgrade the default behavior of workflows has now been changed to instead process multiple workflows in a serial synchronous fashion so that their order of operations and behavior are more consistent and predictable. Now when a workflow triggers another workflow, the system will process all child workflows fully to completion in the original system thread rather than passing each new workflow to a new separate processing thread. This means that child workflows will be processed in a serial fashion, and their order of tasks will be preserved, before the system returns back to working on the original workflow. This may impact systems where workflows are configured to launch other child workflows, and you may now experience an increase in the runtime of such workflows. If the areas in your system that trigger multiple workflows, do so with different target objects for each of the workflows, then it should be safe for you to revert back to the previous mode of operation by enabling the new ['''Run Asynchronously] ''' toggle that is now available inside the configuration of a workflow, and to enable this option on the initial workflows that are instantiating child workflows.
Examples and notes. After the upgrade, the task process order will be:
Smartstaff, administrator
3,320
edits

Navigation menu