2003 (07D3) (RC2003): MQRC_BACKED_OUT

Explanation

The current unit of work encountered an unrecoverable error or was backed out. This reason code is issued in the following cases:
  • On an MQCMIT or MQDISC call, when the commit operation fails and the unit of work is backed out. All resources that participated in the unit of work are returned to their state at the start of the unit of work. The MQCMIT or MQDISC call completes with MQCC_WARNING in this case.
    • [z/OS]On z/OS®, this reason code occurs only for batch applications.
  • On an MQGET, MQPUT, or MQPUT1 call that is operating within a unit of work, when the unit of work already encountered an error that prevents the unit of work from being committed (for example, when the log space is exhausted). The application must issue the appropriate call to back out the unit of work. (For a unit of work that is coordinated by the queue manager, this call is the MQBACK call, although the MQCMIT call has the same effect in these circumstances.) The MQGET, MQPUT, or MQPUT1 call completes with MQCC_FAILED in this case.
    • [z/OS]On z/OS, this case does not occur.
  • On an asynchronous consumption callback (registered by an MQCB call), the unit of work is backed out and the asynchronous consumer should call MQBACK. The asynchronous consumer should also interrogate the State field of the MQCBC (call back context) provided, to see whether the connection has been suspended, and resume if required.
    • [z/OS]On z/OS, this case does not occur.

Completion code

MQCC_WARNING or MQCC_FAILED

Programmer response

Check the returns from previous calls to the queue manager. For example, a previous MQPUT call might have failed.