Exponential backoff
When a module in your scenario outputs a ConnectionError, or ModuleTimeoutError, automatically retries the scenario using exponential backoff — a retry strategy where each failed attempt is followed by a progressively longer waiting period before the next retry. The delays between each scenario reruns depend on whether incomplete executions are enabled in your scenario settings.
Rerun number | Incomplete executions enabled | Incomplete executions disabled |
|---|---|---|
1 | 1 minute | 1 minute |
2 | 10 minutes | 2 minutes |
3 | 10 minutes | 5 minutes |
4 | 30 minutes | 10 minutes |
5 | 30 minutes | 1 hour |
6 | 30 minutes | 3 hours |
7 | 3 hours | 12 hours |
8 | 3 hours | 24 hours |
This means that when a module in your outputs the ConnectionError because the third-party service is unavailable, schedules the rerunning of the one minute after the error occurs.
If a module during the rerun outputs the ConnectionError again, schedules another rerun after 2 minutes and so on. If the 8th attempt fails, disables scheduling of the .
Until disables scheduling the , the follows the run schedule in addition to the exponential backoff reruns (though there are exceptions).
If you want to wait with scheduling the next runs until the reruns finish, enable sequential processingsequential processing in settings.
If you enable the option to store incomplete executions in the settings, stores the run in incomplete executions.
then schedules reruns from the incomplete execution data. If all rerun attempts fail, keeps the incomplete execution for you to resolve manually.