Retry error handling in ۶Ƶ Workfront Fusion
In some cases it is useful to re-execute a failing module if there is a chance that the reason for the failure might pass over time.
Access requirements
You must have the following access to use the functionality in this article:
To find out what plan, license type, or access you have, contact your Workfront administrator.
For information on ۶Ƶ Workfront Fusion licenses, see ۶Ƶ Workfront Fusion licenses.
Workarounds to the Retry error handling directive
۶Ƶ Workfront Fusion currently does not offer the Retry error handling directive, though two workarounds can be employed to mimic its functionality. For more information, see Directives for error handling in ۶Ƶ Workfront Fusion.
Use the Break directive
-
In the scenario settings panel, enable the Allow storing of Incomplete Executions option.
For more information, see The scenario settings panel in ۶Ƶ Workfront Fusion.
-
Attach an error handler route to the module, as described in Error handling in ۶Ƶ Workfront Fusion.
-
Link the Break directive to the error handler route and configure it.
For more information, see Directives for error handling in ۶Ƶ Workfront Fusion.
Drawbacks
-
The minimum retry interval is one minute.
-
If the module is processing multiple bundles and the processing of a bundle fails, the partial execution (only the bundle that caused the error) is moved to the incomplete executions folder and scheduled for retries according to the Break directive settings. However, the current execution continues and the module continues to process the subsequent bundles. You can enable the “Sequential processing” option in the Scenario settings to prevent the scenario from executing again until the execution stored in the the Incomplete executions folder has been successfully resolved.
For more information on incomplete executions, see View and resolve incomplete executions in ۶Ƶ Workfront Fusion.
Use the Repeater module
-
Employ the Repeater module and set its Repeats field to the maximum number of attempts.
-
Link the potentially failing module to the Repeater module.
-
Attach an error handler route to this module (see Error handling in ۶Ƶ Workfront Fusion).
-
Link the Tools > Sleep module to the error handler route and set its Delay field to the number of seconds between the attempts.
-
Link the Ignore directive after the Tools > Sleep module (see Directives for error handling in ۶Ƶ Workfront Fusion).
-
Link the Tools > Set variable module after the the potentially failing module and configure it to store the module’s result in a variable named, for example,
Result
. -
Link the Array aggregator module after the Tools > Set variable and choose the Repeater module in its Source Module field.
-
Link the Tools > Get variable module to the Array aggregator module and configure it to obtain the value of the
Result
variable. -
Insert the Tools > Get variable module between the Repeater module and the potentially failing module and configure it obtain the value of the
Result
variable. -
Insert a filter between this Tools > Get variable module and the potentially failing module to continue only if the
Result
variable does not exist.
Result
.Drawback
This workaround might appear a bit too complex, and is also more demanding in terms of operations.