Directives for error handling
The Directives are explained in detail below:
Rollback | Action Flow execution is stopped immediately and a rollback phase is started on all the modules in an attempt to revert them all to their initial state. The subsequent modules are not processed. Barring a few error types, the Action Flow is deactivated after the number of consecutive errors specified under Action Flow settings. The Action Flow execution status is marked as "error". Note: This is the default behavior if no error handler route is attached to the module and the allow storing complete executions setting under Action Flow settings is not checked. | |
Commit | Action Flow execution is stopped immediately and a commit phase is started on all modules. The subsequent modules are not processed. All unprocessed bundles are ignored. The Action Flow execution status is marked as "success". | |
Resume | A substitute output is specified and supplied to the module that encounters an error. The subsequent modules are processed. The Action Flow execution status is marked as "success". | |
Ignore | The error is ignored and the subsequent modules are not processed. If there are unprocessed bundles, the Action Flow execution continues normally. The Action Flow execution status is marked as "success". | |
Break | The state of the Action Flow execution is stored in the queue of incomplete executions where the error can be resolved manually. The subsequent modules are not processed. If there are unprocessed bundles, the Action Flow execution continues normally. The Action Flow execution status is marked as "warning" when the Automatically complete execution option is disabled. | |
Retry | In some cases, it could be useful to re-execute a failing module for a couple of times when there is a chance that the reason for the failure might pass over time. Celonis platform currently does not offer the retry directive, though several workarounds can be employed to mimic its functionality. |
Currently, the error handling directives can not be used out of the scope of an error-handling route and Celonis platform currently does not offer a Throw module that would enable you to easily conditionally generate (throw) errors, though a workaround can be employed to mimic its functionality.
Break
When an error is handled by the Break directive, a record is created in the Incomplete executions folder which stores the state of the Action Flow execution along with data from the prior modules. For each bundle of data that causes the error, a separate record is created.
The record references the module where the error originated and contains information regarding what data was received by the module as input.
Here, you may resolve the error manually by updating the Action Flow (if needed) and running it once.
On the other hand, by enabling the Automatically complete execution option under the Break directive settings, it can be configured to automatically process an incomplete execution by re-executing the Action Flow after the specified number of minutes.
With this option enabled, when an error takes place, the incomplete execution is retrieved (after the time specified in the Interval between attempts field) and executed with the original input data. This will repeat until the execution of the module completes without an error or until the Number of attempts specified is reached.
However, there are some exceptions to executions being stored under Incomplete Executions and with some error types, the auto-retry of a Action Flow execution is not possible.