Flow states retry and error handling

States can encounter runtime errors for various reasons:

  • Transient errors such as network outages and congestions
  • JSON path resolution errors

Map state and ZIS built-in actions support error handling fallback through the Catch field. Example:

"Catch": [  {    "ErrorEquals": [      "States.ALL"    ],    "Next": "AnotherState"  }]

Currently, the only supported error state is States.ALL. When an error occurs, the workflow will transition to the state named in the Next field.

Retry logic

In the event of runtime errors, the workflow job will retry up to three times before being discarded. For HTTP based actions in the workflow, ZIS looks into the HTTP response status code to decide if a retry is meaningful. For status codes of 4xx, with the exception of 429, the workflow job is not retried because it will not succeed regardless. For status codes 5xx, 429, and timeouts, ZIS performs a retry.

ZIS uses internal retry strategies. It does not currently support retries used in Amazon States Language.