Retry
Overview
The Retry component lets you repeatedly try to run a connected component until it succeeds (or a maximum number of attempts is reached). This component is used like an iterator component, where it is attached to an existing component.
During the wait time between retries, nothing is shown in the Task panel, and it may appear that although the job run hasn't completed yet, it isn't working on anything either. Once the current wait time is reached, the task will be added to the run for its next attempt and the job will continue.
On Snowflake or Redshift, take care when using the Retry component inside a transaction block (between the Begin and Commit components. If an error occurs on the machine, or the platform Matillion ETL is running on, retrying will also fail because the transaction has not yet been rolled back. It is more sensible to attach the Retry component to a Run Orchestration component where that job contains its own transaction logic.
Properties
Name
= string
A human-readable name for the component.
Number of Retries
= integer
The maximum number of attempts to retry the connected component. The total number of times the attached component could be run is one more than the number of retries. The original run is not a retry. If the final retry fails, the failure link is followed. The first time the component succeeds, the success link is followed.
Retry Delay
= drop-down
Certain kinds of transient failures may benefit from a delay before retrying. The Retry Delay setting provides strategies for retrying quickly or slowly, with the ability to leave longer and longer pauses between attempts (known as backoff).
- Custom: Specify a custom delay value of hours, minutes, or seconds.
- Long delay: Waits approximately 15 seconds between retries.
- Long delay with backoff: Waits longer between each failure, at approximately 15, 30, 60, 120, 240... seconds.
- Retry immediately: Will immediately retry up to the maximum number of retries. This is the default setting.
- Short delay: Waits approximately 2 seconds between retries.
- Short delay with backoff: Waits longer between each failure, at approximately 1, 2, 5, 10, 20, 40... seconds.
Retry Interval
= integer
An integer value of the unit specified below. The default value is 1.
An error will occur if the value is below 0 or above 3600. An error will also occur if the value isn't an integer.
Only available when Retry Delay is set to Custom.
Retry Time Unit
= drop-down
Select the time unit. Choose Hour, Minute, or Second. The default setting is Second.
Only available when Retry Delay is set to Custom.
Variable Exports
This component makes the following values available to export into variables:
Source | Description |
---|---|
Iterations Attempted | The number of iterations that this component attempts. This is akin to its successes plus its failures. |
Iterations Generated | The number of iterations that have been initiated. Iterations are generated when the component runs and so this will always be the maximum requested iterations (number of allowed retries + 1) |
Iterations Successful | The number of iterations successfully performed. This will either be 0 or 1 since the Retry component is escaped when an iteration succeeds. |
Snowflake | Delta Lake on Databricks | Amazon Redshift | Google BigQuery | Azure Synapse Analytics |
---|---|---|---|---|
✅ | ✅ | ✅ | ✅ | ✅ |