2206 (089E) (RC2206): MQRC_MSG_ID_ERROR
Explanation
An MQGET call was issued to retrieve a message using the message identifier as a selection criterion, but the call failed because selection by message identifier is not supported on this queue.
- On z/OS®, the queue is a shared queue, but the
IndexType
queue attribute does not have an appropriate value:- If selection is by message identifier alone,
IndexType
must have the value MQIT_MSG_ID. - If selection is by message identifier and correlation identifier combined,
IndexType
must have the value MQIT_MSG_ID or MQIT_CORREL_ID. However, the match-any values of MQCI_NONE and MQMI_NONE respectively are exceptions to this rule, and result in the 2206 MQRC_MSG_ID_ERROR reason code.
- If selection is by message identifier alone,
- On HP Integrity NonStop Server, a key file is required but has not been defined.
Completion Code
MQCC_FAILED
Programmer response
Do one of the following:
- Modify the application so that it does not use selection by message identifier: set the
MsgId
field to MQMI_NONE and do not specify MQMO_MATCH_MSG_ID in MQGMO. - On z/OS, change the
IndexType
queue attribute to MQIT_MSG_ID. - On HP Integrity NonStop Server, define a key file.