MQRC and MQCC Understanding MQ reason codes and completion codes 2110, 2092,2080,2030 - Middleware News
2110 0x0000083e MQRC_FORMAT_ERROR
Problem(Abstract)
You attempt to get a message from your queue. The getting application fails with a data conversion format error.
Symptom
2110 0x0000083e MQRC_FORMAT_ERROR
Cause
The most common reason for 2110 is an incorrect message format in the message descriptor.
Resolving the problem
Specify the correct MQMD Format for your message. The format 'MQSTR ' is what most applications use to convert string data (non numeric data).
2092 MQRC XMIT Q USAGE ERROR
Problem(Abstract)
You put a message to your queue remote and you expect that it will go to the transmission queue and flow across your sender channel. The putting application fails with the following symptom.
Symptom
2092 0x0000082c MQRC_XMIT_Q_USAGE_ERROR
Cause
2092 is returned because the transmission queue definition did not specify the xmitq parameter.
Resolving the problem
Alter the transmission queue and specify usage(xmitq) parameter.
Example:
alter ql(my_queue) usage(xmitq)
Additional information
USAGE
This parameter is supported only on local and model queues.
NORMAL
The queue is not a transmission queue
XMITQ
The queue is a transmission queue, which is used to hold messages that are destined for a remote queue manager. When an application puts a message to a remote queue, the message is stored on the appropriate transmission queue while awaiting transmission to the remote queue manager.
2080 MQRC TRUNCATED MSG FAILED
Problem(Abstract)
Your first MQGET fails with MQRC_TRUNCATED_MSG_FAILED. This happens because your message buffer is too small. You increased the buffer, and did another MQGET. When you process the message, you find the data is not converted.
Symptom
2080 0x00000820 MQRC_TRUNCATED_MSG_FAILED
Cause
This is working as designed. See the additional information listed below.
Resolving the problem
* Make your message buffer of sufficient size, to handle your largest message.
* Your application must handle MQRC_TRUNCATED_MSG_FAILED. Make sure that your program resets the MQMD FORMAT, ENCODING, and CCSID to the original value, else the message will not be converted by WebSphere MQ.
2030 MQRC MSG TOO BIG FOR Q
Problem(Abstract)
MQPUT fails and you receive the following:
2030 X’07EE’ MQRC_MSG_TOO_BIG_FOR_Q
Cause
The message length exceeds the maxmsgl specified in the WebSphere MQ queue manager, queue and channel definitions.
Resolving the problem
The queue manager, queue and channel must have maxmsgl set to be large enough to hold your messages.
1. Alter the queue manager maxmsgl.
2. Alter the queue maxmsgl.
3. Alter the channel maxmsgl.
4. Restart the queue manager.
Maxmsgl can be changed in runmqsc using the following commands:
C:\>runmqsc FRED
5724-B41 (C) Copyright IBM Corp. 1994, 2002. ALL RIGHTS RESERVED.
Starting MQSC for queue manager FRED.
alter qmgr maxmsgl(10000000)
1 : alter qmgr maxmsgl(10000000)
AMQ8005: WebSphere MQ queue manager changed.
alter ql(client.queue.local) maxmsgl(10000000)
2 : alter ql(client.queue.local) maxmsgl(10000000)
AMQ8008: WebSphere MQ queue changed.
alter chl(client.sdr) maxmsgl(10000000)
3 : alter chl(client.sdr) chltype(sdr) maxmsgl(10000000)
AMQ8016: WebSphere MQ channel changed.
Maxmsgl (Maximum Message Length) can also be changed using the MQSeries Explorer panels:
1. Alteration of the queue manager maxmsgl (Maximum Message Length) property:
2. Alteration of the queue maxmsgl (Maximum message Length) property:
3. Alteration of the channel maxmsgl (Maximum message Length) property:
Problem(Abstract)
You attempt to get a message from your queue. The getting application fails with a data conversion format error.
Symptom
2110 0x0000083e MQRC_FORMAT_ERROR
Cause
The most common reason for 2110 is an incorrect message format in the message descriptor.
Resolving the problem
Specify the correct MQMD Format for your message. The format 'MQSTR ' is what most applications use to convert string data (non numeric data).
2092 MQRC XMIT Q USAGE ERROR
Problem(Abstract)
You put a message to your queue remote and you expect that it will go to the transmission queue and flow across your sender channel. The putting application fails with the following symptom.
Symptom
2092 0x0000082c MQRC_XMIT_Q_USAGE_ERROR
Cause
2092 is returned because the transmission queue definition did not specify the xmitq parameter.
Resolving the problem
Alter the transmission queue and specify usage(xmitq) parameter.
Example:
alter ql(my_queue) usage(xmitq)
Additional information
USAGE
This parameter is supported only on local and model queues.
NORMAL
The queue is not a transmission queue
XMITQ
The queue is a transmission queue, which is used to hold messages that are destined for a remote queue manager. When an application puts a message to a remote queue, the message is stored on the appropriate transmission queue while awaiting transmission to the remote queue manager.
2080 MQRC TRUNCATED MSG FAILED
Problem(Abstract)
Your first MQGET fails with MQRC_TRUNCATED_MSG_FAILED. This happens because your message buffer is too small. You increased the buffer, and did another MQGET. When you process the message, you find the data is not converted.
Symptom
2080 0x00000820 MQRC_TRUNCATED_MSG_FAILED
Cause
This is working as designed. See the additional information listed below.
Resolving the problem
* Make your message buffer of sufficient size, to handle your largest message.
* Your application must handle MQRC_TRUNCATED_MSG_FAILED. Make sure that your program resets the MQMD FORMAT, ENCODING, and CCSID to the original value, else the message will not be converted by WebSphere MQ.
2030 MQRC MSG TOO BIG FOR Q
Problem(Abstract)
MQPUT fails and you receive the following:
2030 X’07EE’ MQRC_MSG_TOO_BIG_FOR_Q
Cause
The message length exceeds the maxmsgl specified in the WebSphere MQ queue manager, queue and channel definitions.
Resolving the problem
The queue manager, queue and channel must have maxmsgl set to be large enough to hold your messages.
1. Alter the queue manager maxmsgl.
2. Alter the queue maxmsgl.
3. Alter the channel maxmsgl.
4. Restart the queue manager.
Maxmsgl can be changed in runmqsc using the following commands:
C:\>runmqsc FRED
5724-B41 (C) Copyright IBM Corp. 1994, 2002. ALL RIGHTS RESERVED.
Starting MQSC for queue manager FRED.
alter qmgr maxmsgl(10000000)
1 : alter qmgr maxmsgl(10000000)
AMQ8005: WebSphere MQ queue manager changed.
alter ql(client.queue.local) maxmsgl(10000000)
2 : alter ql(client.queue.local) maxmsgl(10000000)
AMQ8008: WebSphere MQ queue changed.
alter chl(client.sdr) maxmsgl(10000000)
3 : alter chl(client.sdr) chltype(sdr) maxmsgl(10000000)
AMQ8016: WebSphere MQ channel changed.
Maxmsgl (Maximum Message Length) can also be changed using the MQSeries Explorer panels:
1. Alteration of the queue manager maxmsgl (Maximum Message Length) property:
2. Alteration of the queue maxmsgl (Maximum message Length) property:
3. Alteration of the channel maxmsgl (Maximum message Length) property:
Comments
Post a Comment