The workflow subscription timeout and error handling has default behavior. You can custom the behavior for machines in your environment.

IaaS handles event timeout and error proccessing from the Event Broker Service.

At each state transition, SendEBSMessage sends an event to the Event Broker Service and waits for a reply. By default, if a timeout or an error is reported by the Event Broker Service, might occur, it is logged and the workflow resumes.

If a timeout or an error occurs during the following states in the master workflow, the workflow is forced into the error state rather than resuming the workflow.

Table 1. Exceptions Where Workflows Do Not Resume
State Where Error Occurs Error State
PRE MachineProvisioned UnprovisionMachine
PRE BuildingMachine Disposing
PRE RegisterMachine Finalized

To customize the timeout or error behavior, you can add custom properties to the machine for any events or states where you want to trigger an event or force a state change. Use the following examples to configure the custom properties.

  • Extensibility.Lifecycle.Error.Event.{Workflow}.{State}. The value of the property is the name of the event to be triggered on in the workflow in case of timeout or error.
  • Extensibility.Lifecycle.Error.State.{Workflow}.{State}. The value of the property is the name of the state in which the workflow will forcibly transition to in case of timeout or error.