Handling timeout notification errors
The TimeoutNotification node takes various actions when it handles errors with transactional messages, depending on whether the Failure and Catch terminals are connected.
- If the TimeoutNotification node
detects an internal error, one of the following actions occur:
- If you have not connected the Failure terminal:
- The TimeoutNotification node writes the error to the local error log.
- The TimeoutNotification node repeatedly tries to process the request until the problem has been resolved.
- If you have connected the Failure terminal, you are responsible for handling the error in the flow connected to the Failure terminal. The integration node creates an exception list to represent the error, which is propagated to the Failure terminal as part of the message tree. The TimeoutNotification node and the integration node do not provide further failure processing. The message is written to the Failure terminal as part of the same transaction, and if the failure flow handles the error successfully the transaction is committed.
- If you have not connected the Failure terminal:
- If the TimeoutNotification node
has successfully propagated the message to the Out terminal and an
exception is thrown in the flow connected to the Out terminal, the
message is returned to the TimeoutNotification node. The TimeoutNotification node writes
the error to the local error log and takes one of the steps:
- If you have not connected the Catch terminal, the TimeoutNotification node tries to process the message again until the problem is resolved.
- If you have connected the Catch terminal, you are responsible for handling the error in the flow connected to the Catch terminal. The integration node creates an exception list to represent the error, which is propagated to the Catch terminal as part of the message tree. The TimeoutNotification node and the integration node do not provide further failure processing. The message is written to the Catch terminal as part of the same transaction, and if the flow connected to the Catch terminal handles the error successfully the transaction is committed.
- If the TimeoutNotification node has already propagated the message to the Catch terminal and an exception is thrown in the flow connected to the Catch terminal, the message is returned to the TimeoutNotification node. The TimeoutNotification node writes the error to the local error log and tries to process the message again.
- If the TimeoutNotification node has already propagated the message to the Failure terminal and an exception is thrown in the flow connected to the Failure terminal, the message is returned to the TimeoutNotification node. The TimeoutNotification node writes the error to the local error log, and tries to process the message again. The message is not propagated to the Catch terminal, even if that is connected.
This action is summarized in the following table.
Error event | Failure terminal connected | Failure terminal not connected | Catch terminal connected | Catch terminal not connected |
---|---|---|---|---|
The node detects an internal error. | The flow that is connected to the Failure terminal handles the error. | The error is logged and the node retries the operation. | Not applicable | Not applicable |
The node propagates a message to the Out terminal and an exception occurs in the output flow. | Not applicable | Not applicable | The flow that is connected to the Catch terminal handles the error. | The error is logged and the node retries the operation. |
The node propagates a message to the Catch terminal and an exception occurs in the flow that is connected to the Catch terminal. | The error is logged and the node retries the operation. | The error is logged and the node retries the operation. | Not applicable | Not applicable |
The node propagates a message to the Failure terminal and an exception occurs in the flow that is connected to the Failure terminal. | Not applicable | Not applicable | The error is logged and the node retries the operation. | The error is logged and the node retries the operation. |