Maintaining intercommunications along message channels

You might sometimes need to take action in order to maintain intercommunications along message channels. For example you might need to resolve an in-doubt channel by either backing out or committing the messages, or reset channel synchronization if the message counts at the two ends of the channel are not in synchronization. We can also configure channels to reduce the possibility of a sending channel being put in doubt and made unavailable.


About this task

When a channel tries to commit a logical unit of work, if the receiving end of the channel is not available, the sending end of the channel is put in-doubt because it cannot determine whether the messages on the transmission queue have been committed. The messages are held on the transmission queue and no messages can be sent through the channel until the channel's status has been resolved. Often, in-doubt channels are automatically resolved by IBM MQ when connection between the two ends of the channel is re-established. However, this can cause delays, especially if the connection cannot be re-established because, for example, the receiving end of the channel has been deleted.

The Message Channel Agent (MCA) keeps a record of the number of messages sent and received (the Sequence Number) and the ID of the last-committed logical units of work (the LUWID).

For more information, see Distributed queueing and clusters in the IBM MQ online product documentation.