2031 (07EF) (RC2031): MQRC_MSG_TOO_BIG_FOR_Q_MGR
Explanation
An MQPUT or MQPUT1 call
was issued to put a message on a queue, but the message was too long
for the queue manager and MQMF_SEGMENTATION_ALLOWED was not specified
in the MsgFlags
field in
MQMD. If segmentation is not allowed, the length of the message cannot
exceed the lesser of the queue-manager MaxMsgLength
attribute
and queue MaxMsgLength
attribute.
This
reason code can also occur when MQMF_SEGMENTATION_ALLOWED is specified,
but the nature of the data present in the message prevents the queue
manager splitting it into segments that are small enough for the queue-manager
limit:
- For a user-defined format, the smallest segment that the queue manager can create is 16 bytes.
- For a built-in format, the smallest segment that the queue manager can create depends on the particular format, but is greater than 16 bytes in all cases other than MQFMT_STRING (for MQFMT_STRING the minimum segment size is 16 bytes).
MQRC_MSG_TOO_BIG_FOR_Q_MGR can also occur in the Feedback
field
in the message descriptor of a report message; in this case it indicates
that the error was encountered by a message channel agent when it
attempted to put the message on a remote queue.
This reason
also occurs if a channel, through which the message is to pass, has
restricted the maximum message length to a value that is actually
less than that supported by the queue manager, and the message length
is greater than this value.
- On z/OS®, this return code is issued only if you are using CICS® for distributed queuing. Otherwise, MQRC_MSG_TOO_BIG_FOR_CHANNEL is issued.
Completion Code
MQCC_FAILED
Programmer response
Check whether the
BufferLength
parameter
is specified correctly; if it is, do one of the following: - Increase the value of the queue-manager's
MaxMsgLength
attribute; the queue'sMaxMsgLength
attribute may also need increasing. - Break the message into several smaller messages.
- Specify MQMF_SEGMENTATION_ALLOWED in the
MsgFlags
field in MQMD; this will allow the queue manager to break the message into segments. - Check the channel definitions.