Connecting Failure terminals

When a message flow node that has a Failure terminal detects an internal error, it propagates the message to that terminal. If it does not have a Failure terminal, or the Failure terminal is not connected, the integration node generates an exception.

About this task

Message flow nodes can generate errors that you can predict. In these cases, you might want to consider connecting the Failure terminal to a sequence of nodes that can respond to the expected errors.

Some examples of expected errors:

  • Temporary errors when the input node retrieves the message.
  • Validation errors that are detected by an MQInput, Compute, or Mapping node.
  • Messages with an internal or format error that cannot be recognized or processed by the input node.
  • Acceptable errors when a node accesses a database, and you choose not to configure the node to handle those errors.
  • ESQL errors during message flow development. Some ESQL errors cannot be detected by the editor, but are recognized only by the integration node; these errors cause an exception if the Failure terminal is not connected. You can then remove the fail flow when you finish testing the runtime ESQL code.

You can also connect the Failure terminal if you do not want IBM® MQ to try a message again, or put it to a backout or dead letter queue. For more information, see Handling MQInput node errors.