The reason code parameter (REASON) is a qualification to the completion code parameter (CMPCOD).
If there is no special reason to report, RCNONE is returned. A successful call returns CCOK and RCNONE.
If the completion code is either CCWARN or CCFAIL, the queue manager always reports a qualifying reason; details are given under each call description.
Where user exit routines set completion codes and reasons, they should adhere to these rules. In addition, any special reason values defined by user exits should be less than zero, to ensure that they do not conflict with values defined by the queue manager. Exits can set reasons already defined by the queue manager, where these are appropriate.
Reason codes also occur in:
The following is a list of reason codes, in alphabetic order, with more detail than is given in the call descriptions.
The call completed normally. The completion code (CMPCOD) is CCOK.
CCOK
None.
This is the lowest value for an application-defined reason code returned by a data-conversion exit. Data-conversion exits can return reason codes in the range RC0900 through RC0999 to indicate particular conditions that the exit has detected.
CCWARN or CCFAIL
As defined by the writer of the data-conversion exit.
This is the highest value for an application-defined reason code returned by a data-conversion exit. Data-conversion exits can return reason codes in the range RC0900 through RC0999 to indicate particular conditions that the exit has detected.
CCWARN or CCFAIL
As defined by the writer of the data-conversion exit.
An MQOPEN or MQPUT1 call was issued specifying an alias queue as the destination, but the BaseQName in the alias queue definition resolves to a queue that is not a local queue, a local definition of a remote queue, or a cluster queue.
CCFAIL
Correct the queue definitions.
An MQCONN or MQCONNX call was issued, but the application is already connected to the queue manager.
CCWARN
None. The HCONN parameter returned has the same value as was returned for the previous MQCONN or MQCONNX call.
An MQCONN or MQCONNX call that returns this reason code does not mean that an additional MQDISC call must be issued in order to disconnect from the queue manager. If this reason code is returned because the application has been called in a situation where the connect has already been done, a corresponding MQDISC should not be issued, because this will cause the application that issued the original MQCONN or MQCONNX call to be disconnected as well.
The current unit of work encountered a fatal error or was backed out. This occurs in the following cases:
CCWARN or CCFAIL
Check the returns from previous calls to the queue manager. For example, a previous MQPUT call may have failed.
The BUFFER parameter is not valid for one of the following reasons:
CCFAIL
Correct the parameter.
The BUFLEN parameter is not valid, or the parameter pointer is not valid. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
This reason can also be returned to an MQ client program on the MQCONN or MQCONNX call if the negotiated maximum message size for the channel is smaller than the fixed part of any call structure.
CCFAIL
Specify a value that is zero or greater. For the mqAddString and mqSetString calls, the special value MQBL_NULL_TERMINATED is also valid.
CALEN is negative (for MQINQ or MQSET calls), or is not large enough to hold all selected attributes (MQSET calls only). This reason also occurs if the parameter pointer is not valid. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Specify a value large enough to hold the concatenated strings for all selected attributes.
CHRATR is not valid. The parameter pointer is not valid, or points to read-only storage for MQINQ calls or to storage that is not as long as implied by CALEN. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Correct the parameter.
For MQINQ calls, CALEN is not large enough to contain all of the character attributes for which CA* selectors are specified in the SELS parameter.
The call still completes, with the CHRATR parameter string filled in with as many character attributes as there is room for. Only complete attribute strings are returned: if there is insufficient space remaining to accommodate an attribute in its entirety, that attribute and subsequent character attributes are omitted. Any space at the end of the string not used to hold an attribute is unchanged.
An attribute that represents a set of values (for example, the namelist Names attribute) is treated as a single entity--either all of its values are returned, or none.
CCWARN
Specify a large enough value, unless only a subset of the values is needed.
Connection to the queue manager has been lost. This can occur because the queue manager has ended. If the call is an MQGET call with the GMWT option, the wait has been canceled. All connection and object handles are now invalid.
For MQ client applications, it is possible that the call did complete successfully, even though this reason code is returned with a CMPCOD of CCFAIL.
CCFAIL
Applications can attempt to reconnect to the queue manager by issuing the MQCONN or MQCONNX call. It may be necessary to poll until a successful response is received.
Any uncommitted changes in a unit of work should be backed out. A unit of work that is coordinated by the queue manager is backed out automatically.
The DATLEN parameter is not valid. Either the parameter pointer is not valid, or it points to read-only storage. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
This reason code can also be returned to an MQ client program on the MQGET, MQPUT, or MQPUT1 call, if the BUFLEN parameter exceeds the maximum message size that was negotiated for the client channel.
CCFAIL
Correct the parameter.
If the error occurs for an MQ client program, also check that the maximum message size for the channel is big enough to accommodate the message being sent; if it is not big enough, increase the maximum message size for the channel.
On the MQOPEN call, a model queue is specified in the ODON field of the OBJDSC parameter, but the ODDN field is not valid, for one of the following reasons:
This reason code can also sometimes occur when a server application opens the reply queue specified by the MDRQ and MDRM fields in the MQMD of a message that the server has just received. In this case the reason code indicates that the application that sent the original message placed incorrect values into the MDRQ and MDRM fields in the MQMD of the original message.
CCFAIL
Specify a valid name.
The call is not valid for the current environment.
CCFAIL
Do one of the following (as appropriate):
On an MQPUT or MQPUT1 call, the value specified for the MDEXP field in the message descriptor MQMD is not valid.
CCFAIL
Specify a value that is greater than zero, or the special value EIULIM.
On an MQPUT or MQPUT1 call, the value specified for the MDFB field in the message descriptor MQMD is not valid. The value is not FBNONE, and is outside both the range defined for system feedback codes and the range defined for application feedback codes.
CCFAIL
Specify FBNONE, or a value in the range FBSFST through FBSLST, or FBAFST through FBALST.
MQGET calls are currently inhibited for the queue, or for the queue to which this queue resolves. See the InhibitGet queue attribute described in Attributes for queues.
CCFAIL
If the system design allows get requests to be inhibited for short periods, retry the operation later.
An MQOPEN or MQPUT1 call was issued, but the maximum number of open handles allowed for the current task has already been reached. Be aware that when a distribution list is specified on the MQOPEN or MQPUT1 call, each queue in the distribution list uses one handle.
CCFAIL
Check whether the application is issuing MQOPEN calls without corresponding MQCLOSE calls. If it is, modify the application to issue the MQCLOSE call for each open object as soon as that object is no longer needed.
Also check whether the application is specifying a distribution list containing a large number of queues that are consuming all of the available handles. If it is, increase the maximum number of handles that the task can use, or reduce the size of the distribution list. The maximum number of open handles that a task can use is given by the MaxHandles queue manager attribute (see Attributes for the queue manager).
The connection handle HCONN is not valid, for one of the following reasons:
CCFAIL
Ensure that a successful MQCONN or MQCONNX call is performed for the queue manager, and that an MQDISC call has not already been performed for it. Ensure that the handle is being used within its valid scope (see MQCONN - Connect queue manager).
The object handle HOBJ is not valid, for one of the following reasons:
CCFAIL
Ensure that a successful MQOPEN call is performed for this object, and that an MQCLOSE call has not already been performed for it. Ensure that the handle is being used within its valid scope (see MQOPEN - Open object).
On an MQSET call, the value specified for either the IAIGET attribute or the IAIPUT attribute is not valid.
CCFAIL
Specify a valid value. See the InhibitGet or InhibitPut attribute described in Attributes for queues.
On an MQINQ or MQSET call, the IACNT parameter is negative (MQINQ or MQSET), or smaller than the number of integer attribute selectors (IA*) specified in the SELS parameter (MQSET only). This reason also occurs if the parameter pointer is not valid. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Specify a value large enough for all selected integer attributes.
On an MQINQ call, the IACNT parameter is smaller than the number of integer attribute selectors (IA*) specified in the SELS parameter.
The call completes with CCWARN, with the INTATR array filled in with as many integer attributes as there is room for.
CCWARN
Specify a large enough value, unless only a subset of the values is needed.
On an MQINQ or MQSET call, the INTATR parameter is not valid. The parameter pointer is not valid (MQINQ and MQSET), or points to read-only storage or to storage that is not as long as indicated by the IACNT parameter (MQINQ only). (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Correct the parameter.
An MQGET, MQPUT, or MQPUT1 call failed because it would have caused the number of uncommitted messages in the current unit of work to exceed the limit defined for the queue manager (see the MaxUncommittedMsgs queue manager attribute). The number of uncommitted messages is the sum of the following since the start of the current unit of work:
CCFAIL
Check whether the application is looping. If it is not, consider reducing the complexity of the application. Alternatively, increase the queue manager limit for the maximum number of uncommitted messages within a unit of work.
The MQCONN or MQCONNX call was rejected because the maximum number of concurrent connections has been exceeded.
CCFAIL
Either increase the size of the appropriate install parameter value, or reduce the number of concurrent connections.
The MQMD structure is not valid, for one of the following reasons:
CCFAIL
Ensure that input fields in the MQMD structure are set correctly.
On an MQPUT or MQPUT1 call, the MDRQ field in the message descriptor MQMD is blank, but one or both of the following is true:
CCFAIL
Specify the name of the queue to which the reply message or report message is to be sent.
On an MQPUT or MQPUT1 call, the value specified for the MDMT field in the message descriptor (MQMD) is not valid.
CCFAIL
Specify a valid value. See the MDMT field described in MQMD - Message descriptor for details.
An MQPUT or MQPUT1 call was issued to put a message on a queue, but the message was too long for the queue and MFSEGA was not specified in the MDMFL field in MQMD. If segmentation is not allowed, the length of the message cannot exceed the lesser of the queue MaxMsgLength attribute and queue manager MaxMsgLength attribute.
This reason code can also occur when MFSEGA is specified, but the nature of the data present in the message prevents the queue manager splitting it into segments that are small enough to place on the queue:
RC2030 can also occur in the MDFB 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.
CCFAIL
Check whether the BUFLEN parameter is specified correctly; if it is, do one of the following:
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 MFSEGA was not specified in the MDMFL 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 MFSEGA 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:
RC2031 can also occur in the MDFB 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.
CCFAIL
Check whether the BUFLEN parameter is specified correctly; if it is, do one of the following:
An MQGET call was issued, but there is no message on the queue satisfying the selection criteria specified in MQMD (the MDMID and MDCID fields), and in MQGMO (the GMOPT and GMMO fields). Either the GMWT option was not specified, or the time interval specified by the GMWI field in MQGMO has expired. This reason is also returned for an MQGET call for browse, when the end of the queue has been reached.
This reason code can also be returned by the mqGetBag and mqExecute calls. mqGetBag is similar to MQGET. For the mqExecute call, the completion code can be either MQCC_WARNING or MQCC_FAILED:
CCWARN or CCFAIL
If this is an expected condition, no corrective action is required.
If this is an unexpected condition, check that:
Consider waiting longer for the message.
An MQGET call was issued with either the GMMUC or the GMBRWC option. However, the browse cursor is not positioned at a retrievable message. This is caused by one of the following:
CCFAIL
Check the application logic. This may be an expected reason if the application design allows multiple servers to compete for messages after browsing. Consider also using the GMLK option with the preceding browse MQGET call.
The user is not authorized to perform the operation attempted:
This reason code can also occur in the MDFB 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.
CCFAIL
Ensure that the correct queue manager or object was specified, and that appropriate authority exists.
An MQGET call was issued with one of the following options:
but the queue had not been opened for browse.
CCFAIL
Specify OOBRW when the queue is opened.
An MQGET call was issued to retrieve a message from a queue, but the queue had not been opened for input.
CCFAIL
Specify one of the following when the queue is opened:
An MQINQ call was issued to inquire object attributes, but the object had not been opened for inquire.
CCFAIL
Specify OOINQ when the object is opened.
An MQPUT call was issued to put a message on a queue, but the queue had not been opened for output.
CCFAIL
Specify OOOUT when the queue is opened.
An MQSET call was issued to set queue attributes, but the queue had not been opened for set.
CCFAIL
Specify OOSET when the object is opened.
Object definitions that affect this object have been changed since the HOBJ handle used on this call was returned by the MQOPEN call. See MQOPEN - Open object for more information.
This reason does not occur if the object handle is specified in the PMCT field of the PMO parameter on the MQPUT or MQPUT1 call.
CCFAIL
Issue an MQCLOSE call to return the handle to the system. It is then usually sufficient to reopen the object and retry the operation. However, if the object definitions are critical to the application logic, an MQINQ call can be used after reopening the object, to obtain the new values of the object attributes.
An MQOPEN call was issued, but the object in question has already been opened by this or another application with options that conflict with those specified in the OPTS parameter. This arises if the request is for shared input, but the object is already open for exclusive input; it also arises if the request is for exclusive input, but the object is already open for input (of any sort).
MCAs for receiver channels, or the intra-group queuing agent (IGQ agent), may keep the destination queues open even when messages are not being transmitted; this results in the queues appearing to be "in use". Use the MQSC command DISPLAY QSTATUS to find out who is keeping the queue open.
CCFAIL
System design should specify whether an application is to wait and retry, or take other action.
On the MQOPEN or MQPUT1 call, the ODOT field in the object descriptor MQOD specifies a value that is not valid. For the MQPUT1 call, the object type must be OTQ.
CCFAIL
Specify a valid object type.
On the MQOPEN or MQPUT1 call, the object descriptor MQOD is not valid, for one of the following reasons:
CCFAIL
Ensure that input fields in the MQOD structure are set correctly.
On an MQOPEN or MQCLOSE call, an option is specified that is not valid for the type of object or queue being opened or closed.
For the MQOPEN call, this includes the following cases:
For the MQCLOSE call, this includes the following case:
This reason code can also occur on the MQOPEN call when the object being opened is of type OTNLST, OTPRO, or OTQM, but the ODMN field in MQOD is neither blank nor the name of the local queue manager.
CCFAIL
Specify the correct option; see Table 54 for open options, and Table 49 for close options. For the MQOPEN call, ensure that the ODMN field is set correctly. For the MQCLOSE call, either correct the option or change the definition type of the model queue that is used to create the new queue.
The OPTS parameter or field contains options that are not valid, or a combination of options that is not valid.
This reason also occurs if the parameter pointer is not valid. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Specify valid options. Check the description of the OPTS parameter or field to determine which options and combinations of options are valid. If multiple options are being set by adding the individual options together, ensure that the same option is not added twice.
On an MQPUT or MQPUT1 call, the value specified for the MDPER field in the message descriptor MQMD is not valid.
CCFAIL
Specify one of the following values:
On an MQPUT or MQPUT1 call, the value specified for the MDPER field in MQMD (or obtained from the DefPersistence queue attribute) specifies PEPER, but the queue on which the message is being placed does not support persistent messages. Persistent messages cannot be placed on temporary dynamic queues.
This reason code can also occur in the MDFB 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.
CCFAIL
Specify PENPER if the message is to be placed on a temporary dynamic queue. If persistence is required, use a permanent dynamic queue or predefined queue in place of a temporary dynamic queue.
Be aware that server applications are recommended to send reply messages (message type MTRPLY) with the same persistence as the original request message (message type MTRQST). If the request message is persistent, the reply queue specified in the MDRQ field in the message descriptor MQMD cannot be a temporary dynamic queue. Use a permanent dynamic queue or predefined queue as the reply queue in this situation.
An MQPUT or MQPUT1 call was issued, but the value of the MDPRI field in the message descriptor MQMD exceeds the maximum priority supported by the local queue manager (see the MaxPriority queue manager attribute described in Attributes for the queue manager). The message is accepted by the queue manager, but is placed on the queue at the queue manager's maximum priority. The MDPRI field in the message descriptor retains the value specified by the application that put the message.
CCWARN
None required, unless this reason code was not expected by the application that put the message.
An MQPUT or MQPUT1 call was issued, but the value of the MDPRI field in the message descriptor MQMD is not valid. The maximum priority supported by the queue manager is given by the MaxPriority queue manager attribute.
CCFAIL
Specify a value in the range zero through MaxPriority, or the special value PRQDEF.
MQPUT and MQPUT1 calls are currently inhibited for the queue, or for the queue to which this queue resolves. See the InhibitPut queue attribute described in Attributes for queues.
This reason code can also occur in the MDFB 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.
CCFAIL
If the system design allows put requests to be inhibited for short periods, retry the operation later.
An HOBJ queue handle specified on a call refers to a dynamic queue that has been deleted since the queue was opened. (See MQCLOSE - Close object for information about the deletion of dynamic queues.)
CCFAIL
Issue an MQCLOSE call to return the handle and associated resources to the system (the MQCLOSE call will succeed in this case). Check the design of the application that caused the error.
On an MQPUT or MQPUT1 call, the call failed because the queue is full, that is, it already contains the maximum number of messages possible (see the MaxQDepth queue attribute described in Attributes for queues).
This reason code can also occur in the MDFB 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.
CCFAIL
Retry the operation later. Consider increasing the maximum depth for this queue, or arranging for more instances of the application to service the queue.
An MQCLOSE call was issued for a permanent dynamic queue, but the call failed because the queue is not empty or still in use. One of the following applies:
See the usage notes pertaining to dynamic queues for the MQCLOSE call for more information.
This reason code is also returned from a Programmable Command Format (PCF) command to clear or delete a queue, if the queue contains uncommitted messages (or committed messages in the case of delete queue without the purge option).
CCFAIL
Check why there might be messages on the queue. Be aware that the CurrentQDepth queue attribute might be zero even though there are one or more messages on the queue; this can happen if the messages have been retrieved as part of a unit of work that has not yet been committed. If the messages can be discarded, try using the MQCLOSE call with the COPURG option. Consider retrying the call later.
An MQPUT or MQPUT1 call was issued, but there is no space available for the queue on disk or other storage device.
This reason code can also occur in the MDFB 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.
CCFAIL
Check whether an application is putting messages in an infinite loop. If not, make more disk space available for the queue.
One of the following occurred:
CCFAIL
Specify a valid queue.
On an MQCONN or MQCONNX call, the value specified for the QMNAME parameter is not valid or not known. This reason also occurs if the parameter pointer is not valid. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
This reason code can also occur if an MQ client application attempts to connect to a queue manager within an MQ-client queue manager group (see the QMNAME parameter of MQCONN), and either:
CCFAIL
Use an all-blank name if possible, or verify that the name used is valid.
On an MQCONN or MQCONNX call, the queue manager identified by the QMNAME parameter is not available for connection.
On i5/OS, this reason can also be returned by the MQOPEN and MQPUT1 calls, when HCDEFH is specified for the HCONN parameter by an application running in compatibility mode.
This reason code can also occur if an MQ client application attempts to connect to a queue manager within an MQ-client queue manager group when none of the queue managers in the group is available for connection (see the QMNAME parameter of the MQCONN call).
This reason code can also occur if the call is issued by an MQ client application and there is an error with the client-connection or the corresponding server-connection channel definitions.
CCFAIL
Ensure that the queue manager has been started. If the connection is from a client application, check the channel definitions.
An MQPUT or MQPUT1 call was issued, but the MDREP field in the message descriptor MQMD contains one or more options that are not recognized by the local queue manager. The options that cause this reason code to be returned depend on the destination of the message; see Appendix D. Report options and message flags for more details.
This reason code can also occur in the MDFB field in the MQMD of a report message, or in the DLREA field in the MQDLH structure of a message on the dead-letter queue; in both cases it indicates that the destination queue manager does not support one or more of the report options specified by the sender of the message.
CCFAIL
Do the following:
An MQCONN, MQCONNX, MQOPEN, MQPUT1, or MQCLOSE call was issued, but it failed because a security error occurred.
CCFAIL
Note the error from the security manager, and contact your system programmer or security administrator.
On i5/OS, the FFST log will contain the error information.
On an MQINQ or MQSET call, the SELCNT parameter specifies a value that is not valid. This reason also occurs if the parameter pointer is not valid. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Specify a value in the range 0 through 256.
On an MQINQ or MQSET call, the SELCNT parameter specifies a value that is larger than the maximum supported (256).
CCFAIL
Reduce the number of selectors specified on the call; the valid range is 0 through 256.
An MQINQ or MQSET call was issued, but the SELS array contains a selector that is not valid for one of the following reasons:
This reason also occurs if the parameter pointer is not valid. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Ensure that the value specified for the selector is valid for the object type represented by HOBJ. For the MQSET call, also ensure that the selector represents an integer attribute that can be set.
On the MQINQ call, one or more selectors in the SELS array is not applicable to the type of the queue whose attributes are being inquired.
This reason also occurs when the queue is a cluster queue that resolved to a remote instance of the queue. In this case only a subset of the attributes that are valid for local queues can be inquired. See the usage notes in MQINQ - Inquire about object attributes for further details.
The call completes with CCWARN, with the attribute values for the inapplicable selectors set as follows:
CCWARN
Verify that the selector specified is the one that was intended.
If the queue is a cluster queue, specifying one of the OOBRW, OOINP*, or OOSET options in addition to OOINQ forces the queue to resolve to the local instance of the queue. However, if there is no local instance of the queue the MQOPEN call fails.
The call failed because there is insufficient main storage available.
CCFAIL
Ensure that active applications are behaving correctly, for example, that they are not looping unexpectedly. If no problems are found, make more main storage available.
Either GMSYP was specified on an MQGET call or PMSYP was specified on an MQPUT or MQPUT1 call, but the local queue manager was unable to honor the request. If the queue manager does not support units of work, the SyncPoint queue manager attribute will have the value SPNAVL.
This reason code can also occur on the MQGET, MQPUT, and MQPUT1 calls when an external unit-of-work coordinator is being used. If that coordinator requires an explicit call to start the unit of work, but the application has not issued that call prior to the MQGET, MQPUT, or MQPUT1 call, reason code RC2072 is returned.
On i5/OS, this reason codes means that i5/OS Commitment Control is not started, or is unavailable for use by the queue manager.
CCFAIL
Remove the specification of GMSYP or PMSYP, as appropriate.
On an MQSET call, the value specified for the IATRGC attribute selector is not valid.
CCFAIL
Specify a valid value. See Attributes for queues.
On an MQSET call, the value specified for the IATRGD attribute selector is not valid.
CCFAIL
Specify a value that is greater than zero. See Attributes for queues.
On an MQSET call, the value specified for the IATRGP attribute selector is not valid.
CCFAIL
Specify a value in the range zero through the value of MaxPriority queue manager attribute. See Attributes for queues.
On an MQSET call, the value specified for the IATRGT attribute selector is not valid.
CCFAIL
Specify a valid value. See Attributes for queues.
On an MQGET call, the message length was too large to fit into the supplied buffer. The GMATM option was specified, so the call completes. The message is removed from the queue (subject to unit-of-work considerations), or, if this was a browse operation, the browse cursor is advanced to this message.
The DATLEN parameter is set to the length of the message before truncation, the BUFFER parameter contains as much of the message as fits, and the MQMD structure is filled in.
CCWARN
None, because the application expected this situation.
On an MQGET call, the message length was too large to fit into the supplied buffer. The GMATM option was not specified, so the message has not been removed from the queue. If this was a browse operation, the browse cursor remains where it was before this call, but if GMBRWF was specified, the browse cursor is positioned logically before the highest-priority message on the queue.
The DATLEN field is set to the length of the message before truncation, the BUFFER parameter contains as much of the message as fits, and the MQMD structure is filled in.
CCWARN
Supply a buffer that is at least as large as DATLEN, or specify GMATM if not all of the message data is required.
An MQOPEN or MQPUT1 call was issued specifying an alias queue as the target, but the BaseQName in the alias queue attributes is not recognized as a queue name.
This reason code can also occur when BaseQName is the name of a cluster queue that cannot be resolved successfully.
CCFAIL
Correct the queue definitions.
An MQOPEN or MQPUT1 call was issued, but the object identified by the ODON and ODMN fields in the object descriptor MQOD cannot be found. One of the following applies:
CCFAIL
Specify a valid object name. Ensure that the name is padded to the right with blanks if necessary. If this is correct, check the queue definitions.
On an MQOPEN or MQPUT1 call, the ODMN field in the object descriptor MQOD does not satisfy the naming rules for objects. For more information, see the WebSphere MQ Application Programming Guide.
This reason also occurs if the ODOT field in the object descriptor has the value OTQM, and the ODMN field is not blank, but the name specified is not the name of the local queue manager.
CCFAIL
Specify a valid queue manager name. To refer to the local queue manager, a name consisting entirely of blanks or beginning with a null character can be used. Ensure that the name is padded to the right with blanks or terminated with a null character if necessary.
On an MQOPEN or MQPUT1 call, an error occurred with the queue-name resolution, for one of the following reasons:
CCFAIL
Check the values specified for ODMN and ODON. If these are correct, check the queue definitions.
On the MQGET call, the value specified for the GMWI field in the GMO parameter is not valid.
CCFAIL
Specify a value greater than or equal to zero, or the special value WIULIM if an indefinite wait is required.
On an MQOPEN or MQPUT1 call, a message is to be sent to a remote queue manager. The ODON or ODMN field in the object descriptor specifies the name of a local definition of a remote queue but one of the following applies to the XmitQName attribute of the definition:
This reason also occurs if the queue name is resolved through a cell directory, and the remote queue manager name obtained from the cell directory is the name of a queue, but this is not a local queue.
CCFAIL
Check the values specified for ODON and ODMN. If these are correct, check the queue definitions. For more information on transmission queues, see the WebSphere MQ Application Programming Guide.
On an MQOPEN or MQPUT1 call, a message is to be sent to a remote queue manager, but one of the following occurred:
CCFAIL
Check the values specified for ODON and ODMN. If these are correct, check the queue definitions. For more information on transmission queues, see the WebSphere MQ Application Programming Guide.
An MQPUT call was issued with the PMPASA option specified in the PMO parameter, but the queue had not been opened with the OOPASA option.
CCFAIL
Specify OOPASA (or another option that implies it) when the queue is opened.
An MQPUT call was issued with the PMPASI option specified in the PMO parameter, but the queue had not been opened with the OOPASI option.
CCFAIL
Specify OOPASI (or another option that implies it) when the queue is opened.
An MQPUT call was issued with the PMSETA option specified in the PMO parameter, but the queue had not been opened with the OOSETA option.
CCFAIL
Specify OOSETA when the queue is opened.
An MQPUT call was issued with the PMSETI option specified in the PMO parameter, but the queue had not been opened with the OOSETI option.
CCFAIL
Specify OOSETI (or another option that implies it) when the queue is opened.
On an MQPUT or MQPUT1 call, PMPASI or PMPASA was specified, but the handle specified in the PMCT field of the PMO parameter is either not a valid queue handle, or it is a valid queue handle but the queue was not opened with OOSAVA.
CCFAIL
Specify OOSAVA when the queue referred to is opened.
On an MQPUT or MQPUT1 call, PMPASI or PMPASA was specified, but the queue handle specified in the PMCT field of the PMO parameter has no context associated with it. This arises if no message has yet been successfully retrieved with the queue handle referred to, or if the last successful MQGET call was a browse.
This condition does not arise if the message that was last retrieved had no context associated with it.
CCFAIL
Ensure that a successful nonbrowse get call has been issued with the queue handle referred to.
An MQOPEN call was issued to create a dynamic queue, but a queue with the same name as the dynamic queue already exists.
CCFAIL
If supplying a dynamic queue name in full, ensure that it obeys the naming conventions for dynamic queues; if it does, either supply a different name, or delete the existing queue if it is no longer required. Alternatively, allow the queue manager to generate the name.
If the queue manager is generating the name (either in part or in full), reissue the MQOPEN call.
The object accessed by the call is damaged and cannot be used. For example, this may be because the definition of the object in main storage is not consistent, or because it differs from the definition of the object on disk, or because the definition on disk cannot be read. The object can be deleted, although it may not be possible to delete the associated user space.
CCFAIL
It may be necessary to stop and restart the queue manager, or to restore the queue manager data from back-up storage.
Consult the FFST(TM) record to obtain more detail about the problem.
There are insufficient system resources to complete the call successfully.
CCFAIL
Run the application when the machine is less heavily loaded.
Consult the FFST record to obtain more detail about the problem.
An MQCONN or MQCONNX call was issued, but the thread or process is already connected to a different queue manager. The thread or process can connect to only one queue manager at a time.
CCFAIL
Use the MQDISC call to disconnect from the queue manager that is already connected, and then issue the MQCONN or MQCONNX call to connect to the new queue manager.
Disconnecting from the existing queue manager will close any queues that are currently open; it is recommended that any uncommitted units of work should be committed or backed out before the MQDISC call is issued.
An MQPUT or MQPUT1 call was issued, but the MDREP field in the message descriptor MQMD contains one or more options that are not recognized by the local queue manager. The options are accepted.
The options that cause this reason code to be returned depend on the destination of the message; see Appendix D. Report options and message flags for more details.
CCWARN
If this reason code is expected, no corrective action is required. If this reason code is not expected, do the following:
An MQGET call was issued with the GMCONV option specified in the GMO parameter, but the message cannot be converted successfully due to an error associated with the message format. Possible errors include:
The message is returned unconverted to the application issuing the MQGET call, the values of the MDCSI and MDENC fields in the MSGDSC parameter are set to those of the message returned, and the call completes with CCWARN.
If the message consists of several parts, each of which is described by its own character-set and encoding fields (for example, a message with format name FMDLH), some parts may be converted and other parts not converted. However, the values returned in the various character-set and encoding fields always correctly describe the relevant message data.
CCWARN
Check the format name that was specified when the message was put. If this is not one of the built-in formats, check that a suitable exit with the same name as the format is available for the queue manager to load. Verify that the data in the message corresponds to the format expected by the exit.
The coded character-set identifier from which character data is to be converted is not valid or not supported.
This can occur on the MQGET call when the GMCONV option is included in the GMO parameter; the coded character-set identifier in error is the MDCSI field in the message being retrieved. In this case, the message data is returned unconverted, the values of the MDCSI and MDENC fields in the MSGDSC parameter are set to those of the message returned, and the call completes with CCWARN.
This reason can also occur on the MQGET call when the message contains one or more MQ header structures (MQCIH, MQDLH, MQIIH, MQRMH), and the MDCSI field in the message specifies a character set that does not have SBCS characters for the characters that are valid in queue names. MQ header structures containing such characters are not valid, and so the message is returned unconverted. The Unicode character set UCS-2 is an example of such a character set.
If the message consists of several parts, each of which is described by its own character-set and encoding fields (for example, a message with format name FMDLH), some parts may be converted and other parts not converted. However, the values returned in the various character-set and encoding fields always correctly describe the relevant message data.
This reason can also occur on the MQXCNVC call; the coded character-set identifier in error is the SRCCSI parameter. Either the SRCCSI parameter specifies a value that is not valid or not supported, or the SRCCSI parameter pointer is not valid. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCWARN or CCFAIL
Check the character-set identifier that was specified when the message was put, or that was specified for the SRCCSI parameter on the MQXCNVC call. If this is correct, check that it is one for which queue manager conversion is supported. If queue manager conversion is not supported for the specified character set, conversion must be carried out by the application.
On an MQGET call, with the GMCONV option included in the GMO parameter, the MDENC value in the message being retrieved specifies an integer encoding that is not recognized. The message data is returned unconverted, the values of the MDCSI and MDENC fields in the MSGDSC parameter are set to those of the message returned, and the call completes with CCWARN.
If the message consists of several parts, each of which is described by its own character-set and encoding fields (for example, a message with format name FMDLH), some parts may be converted and other parts not converted. However, the values returned in the various character-set and encoding fields always correctly describe the relevant message data.
This reason code can also occur on the MQXCNVC call, when the OPTS parameter contains an unsupported DCCS* value, or when DCCSUN is specified for a UCS-2 code page.
CCWARN or CCFAIL
Check the integer encoding that was specified when the message was put. If this is correct, check that it is one for which queue manager conversion is supported. If queue manager conversion is not supported for the required integer encoding, conversion must be carried out by the application.
On an MQGET call with the GMCONV option included in the GMO parameter, the MDENC value in the message being retrieved specifies a decimal encoding that is not recognized. The message data is returned unconverted, the values of the MDCSI and MDENC fields in the MSGDSC parameter are set to those of the message returned, and the call completes with CCWARN.
If the message consists of several parts, each of which is described by its own character-set and encoding fields (for example, a message with format name FMDLH), some parts may be converted and other parts not converted. However, the values returned in the various character-set and encoding fields always correctly describe the relevant message data.
CCWARN
Check the decimal encoding that was specified when the message was put. If this is correct, check that it is one for which queue manager conversion is supported. If queue manager conversion is not supported for the required decimal encoding, conversion must be carried out by the application.
On an MQGET call, with the GMCONV option included in the GMO parameter, the MDENC value in the message being retrieved specifies a floating-point encoding that is not recognized. The message data is returned unconverted, the values of the MDCSI and MDENC fields in the MSGDSC parameter are set to those of the message returned, and the call completes with CCWARN.
If the message consists of several parts, each of which is described by its own character-set and encoding fields (for example, a message with format name FMDLH), some parts may be converted and other parts not converted. However, the values returned in the various character-set and encoding fields always correctly describe the relevant message data.
CCWARN
Check the floating-point encoding that was specified when the message was put. If this is correct, check that it is one for which queue manager conversion is supported. If queue manager conversion is not supported for the required floating-point encoding, conversion must be carried out by the application.
The coded character-set identifier to which character data is to be converted is not valid or not supported.
This can occur on the MQGET call when the GMCONV option is included in the GMO parameter; the coded character-set identifier in error is the MDCSI field in the MSGDSC parameter. In this case, the message data is returned unconverted, the values of the MDCSI and MDENC fields in the MSGDSC parameter are set to those of the message returned, and the call completes with CCWARN.
This reason can also occur on the MQGET call when the message contains one or more MQ header structures (MQCIH, MQDLH, MQIIH, MQRMH), and the MDCSI field in the MSGDSC parameter specifies a character set that does not have SBCS characters for the characters that are valid in queue names. The Unicode character set UCS-2 is an example of such a character set.
This reason can also occur on the MQXCNVC call; the coded character-set identifier in error is the TGTCSI parameter. Either the TGTCSI parameter specifies a value that is not valid or not supported, or the TGTCSI parameter pointer is not valid. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCWARN or CCFAIL
Check the character-set identifier that was specified for the MDCSI field in the MSGDSC parameter on the MQGET call, or that was specified for the SRCCSI parameter on the MQXCNVC call. If this is correct, check that it is one for which queue manager conversion is supported. If queue manager conversion is not supported for the specified character set, conversion must be carried out by the application.
On an MQGET call with the GMCONV option included in the GMO parameter, the MDENC value in the MSGDSC parameter specifies an integer encoding that is not recognized. The message data is returned unconverted, the values of the MDCSI and MDENC fields in the MSGDSC parameter are set to those of the message being retrieved, and the call completes with CCWARN.
This reason code can also occur on the MQXCNVC call, when the OPTS parameter contains an unsupported DCCT* value, or when DCCTUN is specified for a UCS-2 code page.
CCWARN or CCFAIL
Check the integer encoding that was specified. If this is correct, check that it is one for which queue manager conversion is supported. If queue manager conversion is not supported for the required integer encoding, conversion must be carried out by the application.
On an MQGET call with the GMCONV option included in the GMO parameter, the MDENC value in the MSGDSC parameter specifies a decimal encoding that is not recognized. The message data is returned unconverted, the values of the MDCSI and MDENC fields in the MSGDSC parameter are set to those of the message returned, and the call completes with CCWARN.
CCWARN
Check the decimal encoding that was specified. If this is correct, check that it is one for which queue manager conversion is supported. If queue manager conversion is not supported for the required decimal encoding, conversion must be carried out by the application.
On an MQGET call with the GMCONV option included in the GMO parameter, the MDENC value in the MSGDSC parameter specifies a floating-point encoding that is not recognized. The message data is returned unconverted, the values of the MDCSI and MDENC fields in the MSGDSC parameter are set to those of the message returned, and the call completes with CCWARN.
CCWARN
Check the floating-point encoding that was specified. If this is correct, check that it is one for which queue manager conversion is supported. If queue manager conversion is not supported for the required floating-point encoding, conversion must be carried out by the application.
An MQGET call was issued with the GMCONV option specified in the GMO parameter, but an error occurred during conversion of the data in the message. The message data is returned unconverted, the values of the MDCSI and MDENC fields in the MSGDSC parameter are set to those of the message returned, and the call completes with CCWARN.
If the message consists of several parts, each of which is described by its own character-set and encoding fields (for example, a message with format name FMDLH), some parts may be converted and other parts not converted. However, the values returned in the various character-set and encoding fields always correctly describe the relevant message data.
This error may also indicate that a parameter to the data-conversion service is not supported.
CCWARN
Check that the message data is correctly described by the MDFMT, MDCSI and MDENC parameters that were specified when the message was put. Also check that these values, and the MDCSI and MDENC specified in the MSGDSC parameter on the MQGET call, are supported for queue manager conversion. If the required conversion is not supported, conversion must be carried out by the application.
On an MQGET call with the GMCONV option included in the GMO parameter, the message data expanded during data conversion and exceeded the size of the buffer provided by the application. However, the message had already been removed from the queue because prior to conversion the message data could be accommodated in the application buffer without truncation.
The message is returned unconverted, with the CMPCOD parameter of the MQGET call set to CCWARN. If the message consists of several parts, each of which is described by its own character-set and encoding fields (for example, a message with format name FMDLH), some parts may be converted and other parts not converted. However, the values returned in the various character-set and encoding fields always correctly describe the relevant message data.
This reason can also occur on the MQXCNVC call, when the TGTBUF parameter is too small too accommodate the converted string, and the string has been truncated to fit in the buffer. The length of valid data returned is given by the DATLEN parameter; in the case of a DBCS string or mixed SBCS/DBCS string, this length may be less than the length of TGTBUF.
CCWARN
For the MQGET call, check that the exit is converting the message data correctly and setting the output length DATLEN to the appropriate value. If it is, the application issuing the MQGET call must provide a larger buffer for the BUFFER parameter.
For the MQXCNVC call, if the string must be converted without truncation, provide a larger output buffer.
An MQBEGIN call was issued to start a unit of work coordinated by the queue manager, but no participating resource managers have been registered with the queue manager. As a result, only changes to MQ resources can be coordinated by the queue manager in the unit of work.
CCWARN
If the application does not require non-MQ resources to participate in the unit of work, this reason code can be ignored or the MQBEGIN call removed. Otherwise consult your system support programmer to determine why the required resource managers have not been registered with the queue manager; the queue manager's configuration file may be in error.
An MQBEGIN call was issued to start a unit of work coordinated by the queue manager, but one or more of the participating resource managers that had been registered with the queue manager is not available. As a result, changes to those resources cannot be coordinated by the queue manager in the unit of work.
CCWARN
If the application does not require non-MQ resources to participate in the unit of work, this reason code can be ignored. Otherwise consult your system support programmer to determine why the required resource managers are not available. The resource manager may have been halted temporarily, or there may be an error in the queue manager's configuration file.
The queue manager is acting as the unit-of-work coordinator for a unit of work that involves other resource managers, but one of the following occurred:
CCFAIL
Examine the queue manager error logs for messages relating to the mixed outcome; these messages identify the resource managers that are affected. Use procedures local to the affected resource managers to resynchronize the resources.
This reason code does not prevent the application initiating further units of work.
The queue manager is acting as the unit-of-work coordinator for a unit of work that involves other resource managers, and an MQCMIT or MQDISC call was issued to commit the unit of work, but one or more of the participating resource managers has not confirmed that the unit of work was committed successfully.
The completion of the commit operation will happen at some point in the future, but there remains the possibility that the outcome will be mixed.
CCWARN
Use the normal error-reporting mechanisms to determine whether the outcome was mixed. If it was, take appropriate action to resynchronize the resources.
This reason code does not prevent the application initiating further units of work.
The IMS bridge has been started.
CCWARN
None. This reason code is only used to identify the corresponding event message.
The IMS bridge has been stopped.
CCWARN
None. This reason code is only used to identify the corresponding event message.
An MQBEGIN call was issued to start a unit of work coordinated by the queue manager, but a unit of work is already in existence for the connection handle specified. This may be a global unit of work started by a previous MQBEGIN call, or a unit of work that is local to the queue manager or one of the cooperating resource managers. No more than one unit of work can exist concurrently for a connection handle.
CCFAIL
Review the application logic to determine why there is a unit of work already in existence. Move the MQBEGIN call to the appropriate place in the application.
On an MQBEGIN call, the begin-options structure MQBO is not valid, for one of the following reasons:
CCFAIL
Ensure that input fields in the MQBO structure are set correctly.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQDH structure that is not valid. Possible errors include the following:
CCFAIL
Check that the fields in the structure are set correctly. Ensure that the application sets the MECSI field to a valid value (note: CSDEF, CSEMBD, CSQM, and CSUNDF are not valid in this field).
An MQOPEN, MQPUT or MQPUT1 call was issued to open a distribution list or put a message to a distribution list, but the result of the call was not the same for all of the destinations in the list. One of the following applies:
CCWARN or CCFAIL
Examine the MQRR response records to identify the destinations for which the call failed, and the reason for the failure. Ensure that sufficient response records are provided by the application on the call to enable the error(s) to be determined. For the MQPUT1 call, the response records must be specified using the MQOD structure, and not the MQPMO structure.
A queue or other MQ object could not be opened successfully, for one of the following reasons:
CCFAIL
Do one of the following:
STRMQM -c qmgrwhere qmgr should be replaced by the name of the queue manager.
On an MQCONNX call, the connect-options structure MQCNO is not valid, for one of the following reasons:
CCFAIL
Ensure that input fields in the MQCNO structure are set correctly.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQDLH structure that is not valid. Possible errors include the following:
CCFAIL
Check that the fields in the structure are set correctly. Ensure that the application sets the MECSI field to a valid value (note: CSDEF, CSEMBD, CSQM, and CSUNDF are not valid in this field).
An MQPUT or MQPUT1 call was issued, but the message data contains an MQ header structure that is not valid. Possible errors include the following:
CCFAIL
Check that the fields in the structure are set correctly. Ensure that the application sets the MECSI field to a valid value (note: CSDEF, CSEMBD, CSQM, and CSUNDF are not valid in this field).
On the MQXCNVC call, the SRCLEN parameter specifies a length that is less than zero or not consistent with the string's character set or content (for example, the character set is a double-byte character set, but the length is not a multiple of two). This reason also occurs if the SRCLEN parameter pointer is not valid. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
This reason code can also occur on the MQGET call when the GMCONV option is specified. In this case it indicates that the RC2143 reason was returned by an MQXCNVC call issued by the data conversion exit.
CCWARN or CCFAIL
Specify a length that is zero or greater. If the reason code occurs on the MQGET call, check that the logic in the data-conversion exit is correct.
On the MQXCNVC call, the TGTLEN parameter is not valid for one of the following reasons:
This reason code can also occur on the MQGET call when the GMCONV option is specified. In this case it indicates that the RC2144 reason was returned by an MQXCNVC call issued by the data conversion exit.
CCWARN or CCFAIL
Specify a length that is zero or greater. If the DCCFIL option is specified, and TGTCSI is a pure DBCS character set, ensure that TGTLEN specifies a length that is a multiple of two.
If the reason code occurs on the MQGET call, check that the logic in the data-conversion exit is correct.
On the MQXCNVC call, the SRCBUF parameter pointer is not valid, or points to storage that cannot be accessed for the entire length specified by SRCLEN. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
This reason code can also occur on the MQGET call when the GMCONV option is specified. In this case it indicates that the RC2145 reason was returned by an MQXCNVC call issued by the data conversion exit.
CCWARN or CCFAIL
Specify a valid buffer. If the reason code occurs on the MQGET call, check that the logic in the data-conversion exit is correct.
On the MQXCNVC call, the TGTBUF parameter pointer is not valid, or points to read-only storage, or to storage that cannot be accessed for the entire length specified by TGTLEN. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
This reason code can also occur on the MQGET call when the GMCONV option is specified. In this case it indicates that the RC2146 reason was returned by an MQXCNVC call issued by the data conversion exit.
CCWARN or CCFAIL
Specify a valid buffer. If the reason code occurs on the MQGET call, check that the logic in the data-conversion exit is correct.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQIIH structure that is not valid. Possible errors include the following:
CCFAIL
Check that the fields in the structure are set correctly.
An MQPUT or MQPUT1 call was issued to put a message containing PCF data, but the length of the message does not equal the sum of the lengths of the PCF structures present in the message. This can occur for messages with the following format names:
CCFAIL
Ensure that the length of the message specified on the MQPUT or MQPUT1 call equals the sum of the lengths of the PCF structures contained within the message data.
An error was encountered attempting to convert a double-byte character set (DBCS) string. This can occur in the following cases:
CCWARN or CCFAIL
Specify a valid string.
If the reason code occurs on the MQGET call, check that the data in the message is valid, and that the logic in the data-conversion exit is correct.
An MQOPEN or MQPUT1 call was issued to open a distribution list (that is, the ODREC field in MQOD is greater than zero), but the ODON field is neither blank nor the null string.
CCFAIL
If it is intended to open a distribution list, set the ODON field to blanks or the null string. If it is not intended to open a distribution list, set the ODREC field to zero.
An MQOPEN or MQPUT1 call was issued to open a distribution list (that is, the ODREC field in MQOD is greater than zero), but the ODMN field is neither blank nor the null string.
CCFAIL
If it is intended to open a distribution list, set the ODMN field to blanks or the null string. If it is not intended to open a distribution list, set the ODREC field to zero.
An MQOPEN or MQPUT1 call was issued, but the call failed for one of the following reasons:
CCFAIL
If it is intended to open a distribution list, set the ODOT field to OTQ and ODREC to the number of destinations in the list. If it is not intended to open a distribution list, set the ODREC field to zero.
An MQOPEN or MQPUT1 call was issued to open a distribution list (that is, the ODREC field in MQOD is greater than zero), but the MQOR object records are not specified correctly. One of the following applies:
CCFAIL
Ensure that one of ODORO and ODORP is zero and the other nonzero. Ensure that the field used points to accessible storage.
An MQOPEN or MQPUT1 call was issued to open a distribution list (that is, the ODREC field in MQOD is greater than zero), but the MQRR response records are not specified correctly. One of the following applies:
CCFAIL
Ensure that at least one of ODRRO and ODRRP is zero. Ensure that the field used points to accessible storage.
An MQPUT or MQPUT1 call was issued to put a message, but the PMPRF field in the MQPMO structure is not valid, for one of the following reasons:
CCFAIL
Ensure that PMPRF is set with the appropriate PF* flags to indicate which fields are present in the put message records. If PFACC is specified, ensure that either PMSETI or PMSETA is also specified. Alternatively, set both PMPRO and PMPRP to zero.
An MQPUT or MQPUT1 call was issued to put a message to a distribution list, but the MQPMR put message records are not specified correctly. One of the following applies:
CCFAIL
Ensure that at least one of PMPRO and PMPRP is zero. Ensure that the field used points to accessible storage.
An MQI call was issued, but the call failed because the queue manager is quiescing (preparing to shut down).
When the queue manager is quiescing, the MQOPEN, MQPUT, MQPUT1, and MQGET calls can still complete successfully, but the application can request that they fail by specifying the appropriate option on the call:
Specifying these options enables the application to become aware that the queue manager is preparing to shut down.
On i5/OS for applications running in compatibility mode, this reason can be returned when no connection was established.
CCFAIL
The application should tidy up and end. If the application specified the OOFIQ, PMFIQ, or GMFIQ option on the failing call, the relevant option can be removed and the call reissued. By omitting these options, the application can continue working in order to complete and commit the current unit of work, but the application should not start a new unit of work.
An MQI call was issued, but the call failed because the queue manager is shutting down. If the call was an MQGET call with the GMWT option, the wait has been canceled. No more MQI calls can be issued.
For MQ client applications, it is possible that the call did complete successfully, even though this reason code is returned with a CMPCOD of CCFAIL.
CCFAIL
The application should tidy up and end. If the application is in the middle of a unit of work coordinated by an external unit-of-work coordinator, the application should issue the appropriate call to back out the unit of work. Any unit of work that is coordinated by the queue manager is backed out automatically.
On an MQPUT or MQPUT1 call, the MQPMO structure is not valid, for one of the following reasons:
CCFAIL
Ensure that input fields in the MQPMO structure are set correctly.
On an MQOPEN or MQPUT1 call, one of the following occurred:
CCFAIL
Alter the local definition of the remote queue and supply a valid remote queue name, or supply a nonblank ODON in the object descriptor, as appropriate.
An MQPUT call was issued to put a message in a group or a segment of a logical message, but the value specified or defaulted for the MDPER field in MQMD is not consistent with the current group and segment information retained by the queue manager for the queue handle. All messages in a group and all segments in a logical message must have the same value for persistence, that is, all must be persistent, or all must be nonpersistent.
If the current call specifies PMLOGO, the call fails. If the current call does not specify PMLOGO, but the previous MQPUT call for the queue handle did, the call succeeds with completion code CCWARN.
CCWARN or CCFAIL
Modify the application to ensure that the same value of persistence is used for all messages in the group, or all segments of the logical message.
On an MQGET call, the MQGMO structure is not valid, for one of the following reasons:
CCFAIL
Ensure that input fields in the MQGMO structure are set correctly.
It is not permitted to issue MQI calls from user transactions that are run in an MQ/CICS-bridge environment where the bridge exit also issues MQI calls. The MQI call fails. If this occurs in the bridge exit, it will result in a transaction abend. If it occurs in the user transaction, this may result in a transaction abend.
CCFAIL
The transaction cannot be run using the MQ/CICS bridge. Refer to the appropriate CICS manual for information about restrictions in the MQ/CICS bridge environment.
An MQOPEN, MQPUT, or MQPUT1 call was issued to open or put a message on a cluster queue, but the cluster workload exit rejected the call.
CCFAIL
Check the cluster workload exit to ensure that it has been written correctly. Determine why it rejected the call and correct the problem.
An MQOPEN, MQPUT, or MQPUT1 call was issued to open or put a message on a cluster queue, but the queue definition could not be resolved correctly because a response was required from the repository manager but none was available.
CCFAIL
Check that the repository manager is operating and that the queue and channel definitions are correct.
On an MQGET call with the GMCONV option included in the GMO parameter, a string in a fixed-length field in the message expanded during data conversion and exceeded the size of the field. When this happens, the queue manager tries discarding trailing blank characters and characters following the first null character in order to make the string fit, but in this case there were insufficient characters that could be discarded.
This reason code can also occur for messages with a format name of FMIMVS. When this happens, it indicates that the IMS variable string expanded such that its length exceeded the capacity of the 2-byte binary length field contained within the structure of the IMS variable string. (The queue manager never discards trailing blanks in an IMS variable string.)
The message is returned unconverted, with the CMPCOD parameter of the MQGET call set to CCWARN. If the message consists of several parts, each of which is described by its own character-set and encoding fields (for example, a message with format name FMDLH), some parts may be converted and other parts not converted. However, the values returned in the various character-set and encoding fields always correctly describe the relevant message data.
This reason code does not occur if the string could be made to fit by discarding trailing blank characters.
CCWARN
Check that the fields in the message contain the correct values, and that the character-set identifiers specified by the sender and receiver of the message are correct. If they are, the layout of the data in the message must be modified to increase the lengths of the field(s) so that there is sufficient space to allow the string(s) to expand when converted.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQTMC2 structure that is not valid. Possible errors include the following:
CCFAIL
Check that the fields in the structure are set correctly.
An MQOPEN call was issued to open the queue manager definition, but the ODON field in the OBJDSC parameter is not blank.
CCFAIL
Ensure that the ODON field is set to blanks.
The call was rejected because an unexpected error occurred.
CCFAIL
Check the application's parameter list to ensure, for example, that the correct number of parameters was passed, and that data pointers and storage keys are valid. If the problem cannot be resolved, contact your system programmer.
Consult the FFST record to obtain more detail about the problem.
On an MQOPEN or MQPUT1 call, a message is to be sent to a remote queue manager. The ODON or the ODMN in the object descriptor specifies the name of a local definition of a remote queue (in the latter case queue manager aliasing is being used), but the XmitQName attribute of the definition is not blank and not the name of a locally-defined queue.
CCFAIL
Check the values specified for ODON and ODMN. If these are correct, check the queue definitions. For more information on transmission queues, see the WebSphere MQ Application Programming Guide.
An MQOPEN or MQPUT1 call was issued specifying a remote queue as the destination. If a local definition of the remote queue was specified, or if a queue manager alias is being resolved, the XmitQName attribute in the local definition is blank.
Because there is no queue defined with the same name as the destination queue manager, the queue manager has attempted to use the default transmission queue. However, the name defined by the DefXmitQName queue manager attribute is not the name of a locally-defined queue.
CCFAIL
Correct the queue definitions, or the queue manager attribute. See the WebSphere MQ Application Programming Guide for more information.
An MQOPEN or MQPUT1 call was issued specifying a remote queue as the destination. Either a local definition of the remote queue was specified, or a queue manager alias was being resolved, but in either case the XmitQName attribute in the local definition is blank.
Because there is no transmission queue defined with the same name as the destination queue manager, the local queue manager has attempted to use the default transmission queue. However, although there is a queue defined by the DefXmitQName queue manager attribute, it is not a local queue.
CCFAIL
Do one of the following:
See the WebSphere MQ Application Programming Guide for more information.
An MQOPEN or MQPUT1 call was issued specifying a remote queue as the destination. Either a local definition of the remote queue was specified, or a queue manager alias was being resolved, but in either case the XmitQName attribute in the local definition is blank.
Because there is no transmission queue defined with the same name as the destination queue manager, the local queue manager has attempted to use the default transmission queue. However, the queue defined by the DefXmitQName queue manager attribute does not have a Usage attribute of USTRAN.
CCFAIL
Do one of the following:
See the WebSphere MQ Application Programming Guide for more information.
An MQGET call was issued with the GMUNLK option, but no message was currently locked.
CCWARN
Check that a message was locked by an earlier MQGET call with the GMLK option for the same handle, and that no intervening call has caused the message to become unlocked.
A message was put to a remote queue, but the message is larger than the maximum message length allowed by the channel. This reason code is returned in the MDFB field in the message descriptor of a report message.
CCFAIL
Check the channel definitions. Increase the maximum message length that the channel can accept, or break the message into several smaller messages.
The application issued an MQI call whilst another MQI call was already being processed for that connection. Only one call per application connection can be processed at a time.
Concurrent calls can arise when an application uses multiple threads, or when an exit is invoked as part of the processing of an MQI call. For example, a data-conversion exit invoked as part of the processing of the MQGET call may try to issue an MQI call.
CCFAIL
Ensure that an MQI call cannot be issued while another one is active. Do not issue MQI calls from within a data-conversion exit.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQRMH structure that is not valid. Possible errors include the following:
CCFAIL
Check that the fields in the structure are set correctly. Ensure that the application sets the MECSI field to a valid value (note: CSDEF, CSEMBD, CSQM, and CSUNDF are not valid in this field).
This condition is detected when a queue manager becomes active.
CCWARN
None. This reason code is only used to identify the corresponding event message.
This condition is detected when a queue manager is requested to stop or quiesce.
CCWARN
None. This reason code is only used to identify the corresponding event message.
An MQPUT or MQPUT1 call has caused the queue depth to be incremented to or above the limit specified in the QDepthHighLimit attribute.
CCWARN
None. This reason code is only used to identify the corresponding event message.
An MQGET call has caused the queue depth to be decremented to or below the limit specified in the QDepthLowLimit attribute.
CCWARN
None. This reason code is only used to identify the corresponding event message.
No successful gets or puts have been detected within an interval that is greater than the limit specified in the QServiceInterval attribute.
CCWARN
None. This reason code is only used to identify the corresponding event message.
A successful get has been detected within an interval that is less than or equal to the limit specified in the QServiceInterval attribute.
CCWARN
None. This reason code is only used to identify the corresponding event message.
An MQGET, MQPUT or MQPUT1 call was issued to get or put a message within a unit of work, but no TM/MP transaction had been started. If GMNSYP is not specified on MQGET, or PMNSYP is not specified on MQPUT or MQPUT1 (the default), the call requires a unit of work.
CCFAIL
Ensure a TM/MP transaction is available, or issue the MQGET call with the GMNSYP option, or the MQPUT or MQPUT1 call with the PMNSYP option, which will cause a transaction to be started automatically.
This condition is detected when the automatic definition of a channel is successful. The channel is defined by the MCA.
CCWARN
None. This reason code is only used to identify the corresponding event message.
This condition is detected when the automatic definition of a channel fails; this may be because an error occurred during the definition process, or because the channel automatic-definition exit inhibited the definition. Additional information is returned in the event message indicating the reason for the failure.
CCWARN
Examine the additional information returned in the event message to determine the reason for the failure.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQCFH structure that is not valid.
CCFAIL
Check that the fields in the structure are set correctly.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQCFIL structure that is not valid.
CCFAIL
Check that the fields in the structure are set correctly.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQCFIN structure that is not valid.
CCFAIL
Check that the fields in the structure are set correctly.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQCFSL structure that is not valid.
CCFAIL
Check that the fields in the structure are set correctly.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQCFST structure that is not valid.
CCFAIL
Check that the fields in the structure are set correctly.
An operation was attempted on a queue using a queue handle that had an incomplete message group. This reason code can arise in the following situations:
If there is an incomplete logical message as well as an incomplete message group, reason code RC2242 is returned in preference to RC2241.
CCWARN or CCFAIL
If this reason code is expected, no corrective action is required. Otherwise, ensure that the MQPUT call for the last message in the group specifies MFLMIG.
An operation was attempted on a queue using a queue handle that had an incomplete logical message. This reason code can arise in the following situations:
CCWARN or CCFAIL
If this reason code is expected, no corrective action is required. Otherwise, ensure that the MQPUT call for the last segment specifies MFLSEG.
An MQGET call was issued specifying the GMCMPM option, but the message to be retrieved consists of two or more segments that have differing values for the MDCSI field in MQMD. This can arise when the segments take different paths through the network, and some of those paths have MCA sender conversion enabled. The call succeeds with a completion code of CCWARN, but only the first few segments that have identical character-set identifiers are returned.
CCWARN
Remove the GMCMPM option from the MQGET call and retrieve the remaining message segments one by one.
An MQGET call was issued specifying the GMCMPM option, but the message to be retrieved consists of two or more segments that have differing values for the MDENC field in MQMD. This can arise when the segments take different paths through the network, and some of those paths have MCA sender conversion enabled. The call succeeds with a completion code of CCWARN, but only the first few segments that have identical encodings are returned.
CCWARN
Remove the GMCMPM option from the MQGET call and retrieve the remaining message segments one by one.
One of the following applies:
If the current call specifies PMLOGO, the call fails. If the current call does not specify PMLOGO, but the previous MQPUT call for the queue handle did, the call succeeds with completion code CCWARN.
If the current call specifies GMLOGO, the call fails. If the current call does not specify GMLOGO, but the previous MQGET call for the queue handle did, the call succeeds with completion code CCWARN.
CCWARN or CCFAIL
Modify the application to ensure that the same unit-of-work specification is used for all messages in the group, or all segments of the logical message.
An MQGET call was issued specifying the GMCMPM option with either GMMUC or GMBRWC, but the message that is under the cursor has an MQMD with an MDOFF field that is greater than zero. Because GMCMPM was specified, the message is not valid for retrieval.
CCFAIL
Reposition the browse cursor so that it is located on a message whose MDOFF field in MQMD is zero. Alternatively, remove the GMCMPM option.
An MQGET call was issued, but the value of the GMMO field in the GMO parameter is not valid, for one of the following reasons:
CCFAIL
Ensure that only valid options are specified for the field.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQMDE structure that is not valid. Possible errors include the following:
CCFAIL
Check that the fields in the structure are set correctly. Ensure that the application sets the MECSI field to a valid value (note: CSDEF, CSEMBD, CSQM, and CSUNDF are not valid in this field).
An MQPUT or MQPUT1 call was issued, but the MDMFL field in the message descriptor MQMD contains one or more message flags that are not recognized by the local queue manager. The message flags that cause this reason code to be returned depend on the destination of the message; see Appendix D. Report options and message flags for more details.
This reason code can also occur in the MDFB field in the MQMD of a report message, or in the DLREA field in the MQDLH structure of a message on the dead-letter queue; in both cases it indicates that the destination queue manager does not support one or more of the message flags specified by the sender of the message.
CCFAIL
Do the following:
An MQGET, MQPUT, or MQPUT1 call was issued, but the value of the MDSEQ field in the MQMD or MQMDE structure is less than one or greater than 999 999 999.
This error can also occur on the MQPUT call if the MDSEQ field would have become greater than 999 999 999 as a result of the call.
CCFAIL
Specify a value in the range 1 through 999 999 999. Do not attempt to create a message group containing more than 999 999 999 messages.
An MQPUT or MQPUT1 call was issued, but the value of the MDOFF field in the MQMD or MQMDE structure is less than zero or greater than 999 999 999.
This error can also occur on the MQPUT call if the MDOFF field would have become greater than 999 999 999 as a result of the call.
CCFAIL
Specify a value in the range 0 through 999 999 999. Do not attempt to create a message segment that would extend beyond an offset of 999 999 999.
An MQPUT or MQPUT1 call was issued to put a report message that is a segment, but the MDOLN field in the MQMD or MQMDE structure is either:
CCFAIL
Specify a value that is greater than zero. Zero is valid only for the last segment.
An MQPUT or MQPUT1 call was issued to put the first or an intermediate segment of a logical message, but the length of the application message data in the segment (excluding any MQ headers that may be present) is zero. The length must be at least one for the first or intermediate segment.
CCFAIL
Check the application logic to ensure that segments are put with a length of one or greater. Only the last segment of a logical message is permitted to have a length of zero.
An MQGET, MQPUT, or MQPUT1 call was issued to get or put a message outside a unit of work, but the options specified on the call required the queue manager to process the call within a unit of work. Because there is already a user-defined unit of work in existence, the queue manager was unable to create a temporary unit of work for the duration of the call.
This reason occurs in the following circumstances:
CCFAIL
Issue the MQGET, MQPUT, or MQPUT1 call inside the user-defined unit of work. Alternatively, for the MQPUT or MQPUT1 call, reduce the size of the message so that it does not require segmentation by the queue manager.
An MQGET call was issued specifying options that required an MQGMO with a version number not less than GMVER2, but the MQGMO supplied did not satisfy this condition.
CCFAIL
Modify the application to pass a version-2 MQGMO. Check the application logic to ensure that the GMVER field in MQGMO has been set to GMVER2. Alternatively, remove the option that requires the version-2 MQGMO.
An MQGET, MQPUT, or MQPUT1 call was issued specifying options that required an MQMD with a version number not less than MDVER2, but the MQMD supplied did not satisfy this condition.
CCFAIL
Modify the application to pass a version-2 MQMD. Check the application logic to ensure that the MDVER field in MQMD has been set to MDVER2. Alternatively, remove the option that requires the version-2 MQMD.
An MQPUT or MQPUT1 call was issued to put a distribution-list message that is also a message in a group, a message segment, or has segmentation allowed, but an invalid combination of options and values was specified. All of the following are true:
This combination of options and values would result in the same group identifier being used for all of the destinations in the distribution list; this is not permitted by the queue manager.
CCFAIL
Specify GINONE for the MDGID field in MQMD or MQMDE. Alternatively, if the call is MQPUT specify PMLOGO in the PMOPT field in MQPMO.
An MQGET call was issued with the GMBRWN option specified, but the specification of the GMLOGO option for the call is different from the specification of that option for the previous call for the queue handle. Either both calls must specify GMLOGO, or neither call must specify GMLOGO.
CCFAIL
Add or remove the GMLOGO option as appropriate. Alternatively, to switch between logical order and physical order, specify the GMBRWF option to restart the scan from the beginning of the queue, omitting or specifying GMLOGO as required.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQXQH structure that is not valid. Possible errors include the following:
CCFAIL
Check that the fields in the structure are set correctly.
This reason occurs when a channel exit that processes reference messages detects an error in the source environment data of a reference message header (MQRMH). One of the following is true:
The exit returns this reason in the CXFB field of the MQCXP structure. If an exception report is requested, it is copied to the CXFB field of the MQMD associated with the report.
CCFAIL
Specify the source environment data correctly.
This reason occurs when a channel exit that processes reference messages detects an error in the source name data of a reference message header (MQRMH). One of the following is true:
The exit returns this reason in the CXFB field of the MQCXP structure. If an exception report is requested, it is copied to the CXFB field of the MQMD associated with the report.
CCFAIL
Specify the source name data correctly.
This reason occurs when a channel exit that processes reference messages detects an error in the destination environment data of a reference message header (MQRMH). One of the following is true:
The exit returns this reason in the CXFB field of the MQCXP structure. If an exception report is requested, it is copied to the CXFB field of the MQMD associated with the report.
CCFAIL
Specify the destination environment data correctly.
This reason occurs when a channel exit that processes reference messages detects an error in the destination name data of a reference message header (MQRMH). One of the following is true:
The exit returns this reason in the CXFB field of the MQCXP structure. If an exception report is requested, it is copied to the CXFB field of the MQMD associated with the report.
CCFAIL
Specify the destination name data correctly.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQTM structure that is not valid. Possible errors include the following:
CCFAIL
Check that the fields in the structure are set correctly.
An MQOPEN, MQPUT, or MQPUT1 call was issued to open or put a message on a cluster queue, but the cluster workload exit defined by the queue manager's ClusterWorkloadExit attribute failed unexpectedly or did not respond in time. Subsequent MQOPEN, MQPUT, and MQPUT1 calls for this queue handle are processed as though the ClusterWorkloadExit attribute were blank.
CCFAIL
Check the cluster workload exit to ensure that it has been written correctly.
An MQCONN or MQCONNX call was issued to connect to a queue manager, but the queue manager was unable to load the cluster workload exit. Execution continues without the cluster workload exit.
CCWARN
Ensure that the queue manager's ClusterWorkloadExit attribute has the correct value, and that the exit has been installed into the correct location.
An MQOPEN call with the OOOUT and OOBNDO options in effect was issued for a cluster queue, but the call failed because all of the following are true:
If the OOBNDN option is specified on the MQOPEN call, the call can succeed even if all of the queues in the cluster are put-inhibited. However, a subsequent MQPUT call may fail if all of the queues are still put-inhibited at the time of the MQPUT call.
CCFAIL
If the system design allows put requests to be inhibited for short periods, retry the operation later. If the problem persists, determine why all of the queues in the cluster are put-inhibited.
An MQOPEN, MQPUT, or MQPUT1 call was issued for a cluster queue, but an error occurred whilst trying to use a resource required for clustering.
CCFAIL
Do the following:
An MQPUT or MQPUT1 call was issued to put a message on a cluster queue, but at the time of the call there were no longer any instances of the queue in the cluster. The message therefore could not be sent.
This situation can occur when OOBNDN is specified on the MQOPEN call that opens the queue, or MQPUT1 is used to put the message.
CCFAIL
Check the queue definition and queue status to determine why all instances of the queue were removed from the cluster. Correct the problem and rerun the application.
On an MQGET call with the GMCONV option included in the GMO parameter, one or more MQ header structures in the message data could not be converted to the specified target character set or encoding. In this situation, the MQ header structures are converted to the queue manager's character set and encoding, and the application data in the message is converted to the target character set and encoding. On return from the call, the values returned in the various character-set and encoding fields in the MSGDSC parameter and MQ header structures indicate the character set and encoding that apply to each part of the message. The call completes with CCWARN.
This reason code usually occurs when the specified target character set is one that causes the character strings in the MQ header structures to expand beyond the lengths of their fields. Unicode character set UCS-2 is an example of a character set that causes this to happen.
CCFAIL
If this is an expected situation, no corrective action is required.
If this is an unexpected situation, check that the MQ header structures contain valid data. If they do, specify as the target character set a character set that does not cause the strings to expand.
An MQCONNX call was issued to connect to a queue manager, but the MQCD channel definition structure addressed by the CNCCO or CNCCP field in MQCNO contains data that is not valid. Consult the error log for more information about the nature of the error.
CCFAIL
Ensure that input fields in the MQCD structure are set correctly.
An MQCONNX call was issued to connect to a queue manager, but the MQCD channel definition structure is not specified correctly. One of the following applies:
CCFAIL
Ensure that at least one of CNCCO and CNCCP is zero. Ensure that the field used points to accessible storage.
This condition is detected when the channel has been stopped by an operator. The reason qualifier identifies the reasons for stopping.
CCWARN
None. This reason code is only used to identify the corresponding event message.
One of the following has occurred:
CCWARN
None. This reason code is only used to identify the corresponding event message.
This condition is detected when the channel has been stopped. The reason qualifier identifies the reasons for stopping.
CCWARN
None. This reason code is only used to identify the corresponding event message.
This condition is detected when a channel is unable to do data conversion and the MQGET call to get a message from the transmission queue resulted in a data conversion error. The conversion reason code identifies the reason for the failure.
CCWARN
None. This reason code is only used to identify the corresponding event message.
This condition is detected when a channel that has been waiting to become active, and for which a Channel Not Activated event has been generated, is now able to become active because an active slot has been released by another channel.
This event is not generated for a channel that is able to become active without waiting for an active slot to be released.
CCWARN
None. This reason code is only used to identify the corresponding event message.
This condition is detected when a channel is required to become active, either because it is starting or because it is about to make another attempt to establish connection with its partner. However, it is unable to do so because the limit on the number of active channels has been reached. The channel waits until it is able to take over an active slot released when another channel ceases to be active. At that time a Channel Activated event is generated.
CCWARN
None. This reason code is only used to identify the corresponding event message.
The function requested is not available in the current environment.
CCFAIL
Remove the call from the application.
The Selector parameter has the wrong data type; it must be of type Long.
CCFAIL
Declare the Selector parameter as Long.
The mqExecute call was issued, but the value of the MQIASY_TYPE data item in the administration bag is not MQCFT_COMMAND.
CCFAIL
Ensure that the MQIASY_TYPE data item in the administration bag has the value MQCFT_COMMAND.
The Selector parameter specifies a system selector (one of the MQIASY_* values), but the value of the ItemIndex parameter is not MQIND_NONE. Only one instance of each system selector can exist in the bag.
CCFAIL
Specify MQIND_NONE for the ItemIndex parameter.
A call was issued to modify the value of a system data item in a bag (a data item with one of the MQIASY_* selectors), but the call failed because the data item is one that cannot be altered by the application.
CCFAIL
Specify the selector of a user-defined data item, or remove the call.
The mqBufferToBag or mqGetBag call was issued, but the data in the buffer or message could not be converted into a bag. This occurs when the data to be converted is not valid PCF.
CCFAIL
Check the logic of the application that created the buffer or message to ensure that the buffer or message contains valid PCF.
If the message contains PCF that is not valid, the message cannot be retrieved using the mqGetBag call:
The Selector parameter has a value that is outside the valid range for the call. If the bag was created with the MQCBO_CHECK_SELECTORS option:
If the bag was not created with the MQCBO_CHECK_SELECTORS option. The value must be zero or greater.
CCFAIL
Specify a valid value.
The ItemIndex parameter has the value MQIND_NONE, but the bag contains more than one data item with the selector value specified by the Selector parameter. MQIND_NONE requires that the bag contain only one occurrence of the specified selector.
This reason code also occurs on the mqExecute call when the administration bag contains two or more occurrences of a selector for a required parameter that permits only one occurrence.
CCFAIL
Check the logic of the application that created the bag. If correct, specify for ItemIndex a value that is zero or greater, and add application logic to process all of the occurrences of the selector in the bag.
Review the description of the administration command being issued, and ensure that all required parameters are defined correctly in the bag.
The specified index is not present:
CCFAIL
Specify the index of a data item that does exist in the bag or namelist. Use the mqCountItems call to determine the number of data items with the specified selector that exist in the bag, or the nameCount method to determine the number of names in the namelist.
The String parameter is not valid. Either the parameter pointer is not valid, or it points to read-only storage. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Correct the parameter.
The MDENC field in the message descriptor MQMD contains a value that is not supported:
CCFAIL
The value must be ENNAT.
If the value of the MDENC field in the message is not valid, the message cannot be retrieved using the mqGetBag call:
The Selector parameter specifies a selector that does not exist in the bag.
CCFAIL
Specify a selector that does exist in the bag.
The OutSelector parameter is not valid. Either the parameter pointer is not valid, or it points to read-only storage. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Correct the parameter.
The string returned by the call is too long to fit in the buffer provided. The string has been truncated to fit in the buffer.
CCFAIL
If the entire string is required, provide a larger buffer. On the mqInquireString call, the StringLength parameter is set by the call to indicate the size of the buffer required to accommodate the string without truncation.
A data item with the specified selector exists in the bag, but has a data type that conflicts with the data type implied by the call being used. For example, the data item might have an integer data type, but the call being used might be mqSetString, which implies a character data type.
This reason code also occurs on the mqBagToBuffer, mqExecute, and mqPutBag calls when mqAddString or mqSetString was used to add the MQIACF_INQUIRY data item to the bag.
CCFAIL
For the mqSetInteger and mqSetString calls, specify MQIND_ALL for the ItemIndex parameter to delete from the bag all existing occurrences of the specified selector before creating the new occurrence with the required data type.
For the mqInquireBag, mqInquireInteger, and mqInquireString calls, use the mqInquireItemInfo call to determine the data type of the item with the specified selector, and then use the appropriate call to determine the value of the data item.
For the mqBagToBuffer, mqExecute, and mqPutBag calls, ensure that the MQIACF_INQUIRY data item is added to the bag using the mqAddInteger or mqSetInteger calls.
The mqAddInteger or mqAddString call was issued to add another occurrence of the specified selector to the bag, but the data type of this occurrence differed from the data type of the first occurrence.
This reason can also occur on the mqBufferToBag and mqGetBag calls, where it indicates that the PCF in the buffer or message contains a selector that occurs more than once but with inconsistent data types.
CCFAIL
For the mqAddInteger and mqAddString calls, use the call appropriate to the data type of the first occurrence of that selector in the bag.
For the mqBufferToBag and mqGetBag calls, check the logic of the application that created the buffer or sent the message to ensure that multiple-occurrence selectors occur with only one data type. A message that contains a mixture of data types for a selector cannot be retrieved using the mqGetBag call:
An index parameter to a call or method has a value that is not valid. The value must be zero or greater. For bag calls, certain MQIND_* values can also be specified:
CCFAIL
Specify a valid value.
A call was issued to add a data item to a bag, modify the value of an existing data item in a bag, or retrieve a message into a bag, but the call failed because the bag is one that had been created by the system as a result of a previous mqExecute call. System bags cannot be modified by the application.
CCFAIL
Specify the handle of a bag created by the application, or remove the call.
The mqTruncateBag call was issued, but the ItemCount parameter specifies a value that is not valid. The value is either less than zero, or greater than the number of user-defined data items in the bag.
This reason also occurs on the mqCountItems call if the parameter pointer is not valid, or points to read-only storage. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Specify a valid value. Use the mqCountItems call to determine the number of user-defined data items in the bag.
The MDFMT field in the message descriptor MQMD contains a value that is not supported:
CCFAIL
The value must be one of the following:
If the value of the MDFMT field in the message is none of these values, the message cannot be retrieved using the mqGetBag call:
The Selector parameter specifies a value that is a system selector (a value that is negative), but the system selector is not one that is supported by the call.
CCFAIL
Specify a selector value that is supported.
The mqInquireBag or mqInquireInteger call was issued, but the ItemValue parameter is not valid. Either the parameter pointer is not valid, or it points to read-only storage. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Correct the parameter.
A call was issued that has a parameter that is a bag handle, but the handle is not valid. For output parameters, this reason also occurs if the parameter pointer is not valid, or points to read-only storage. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Correct the parameter.
An administration message requires a parameter that is not present in the administration bag. This reason code occurs only for bags created with the MQCBO_ADMIN_BAG or MQCBO_REORDER_AS_REQUIRED options.
CCFAIL
Review the description of the administration command being issued, and ensure that all required parameters are present in the bag.
The command server that processes administration commands is not available.
CCFAIL
Start the command server.
The StringLength parameter is not valid. Either the parameter pointer is not valid, or it points to read-only storage. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Correct the parameter.
The mqAddInquiry call was used previously to add attribute selectors to the bag, but the command code to be used for the mqBagToBuffer, mqExecute, or mqPutBag call is not recognized. As a result, the correct PCF message cannot be generated.
CCFAIL
Remove the mqAddInquiry calls and use instead the mqAddInteger call with the appropriate MQIACF_*_ATTRS or MQIACH_*_ATTRS selectors.
A bag that is input to the call contains nested bags. Nested bags are supported only for bags that are output from the call.
CCFAIL
Use a different bag as input to the call.
The Bag parameter specifies the handle of a bag that has the wrong type for the call. The bag must be an administration bag, that is, it must be created with the MQCBO_ADMIN_BAG option specified on the mqCreateBag call.
CCFAIL
Specify the MQCBO_ADMIN_BAG option when the bag is created.
The mqInquireItemInfo call was issued, but the ItemType parameter is not valid. Either the parameter pointer is not valid, or it points to read-only storage. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Correct the parameter.
An mqDeleteBag call was issued to delete a bag, but the call failed because the bag is one that had been created by the system as a result of a previous mqExecute call. System bags cannot be deleted by the application.
CCFAIL
Specify the handle of a bag created by the application, or remove the call.
A call was issued to delete a system data item from a bag (a data item with one of the MQIASY_* selectors), but the call failed because the data item is one that cannot be deleted by the application.
CCFAIL
Specify the selector of a user-defined data item, or remove the call.
The CodedCharSetId parameter is not valid. Either the parameter pointer is not valid, or it points to read-only storage. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Correct the parameter.
An MQPUT or MQPUT1 call was issued, but the message data contains an MQRFH or MQRFH2 structure that is not valid. Possible errors include the following:
CCFAIL
Check that the fields in the structure are set correctly. Ensure that the application sets the MECSI field to a valid value (note: CSDEF, CSEMBD, CSQM, and CSUNDF are not valid in this field).
The contents of the RFNVS field in the MQRFH structure are not valid. RFNVS must adhere to the following rules:
The following is a valid RFNVS:
Famous_Words "Program displayed ""Hello World"""
CCFAIL
Modify the application that generated the message to ensure that it places in the RFNVS field data that adheres to the rules listed above. Check that the RFLEN field is set to the correct value.
The message contains an MQRFH structure, but the command name contained in the RFNVS field is not valid.
CCFAIL
Modify the application that generated the message to ensure that it places in the RFNVS field a command name that is valid.
The message contains an MQRFH structure, but a parameter name contained in the RFNVS field is not valid for the command specified.
CCFAIL
Modify the application that generated the message to ensure that it places in the RFNVS field only parameters that are valid for the specified command.
The message contains an MQRFH structure, but a parameter occurs more than once in the RFNVS field when only one occurrence is valid for the specified command.
CCFAIL
Modify the application that generated the message to ensure that it places in the RFNVS field only one occurrence of the parameter.
The message contains an MQRFH structure, but the command specified in the RFNVS field requires a parameter that is not present.
CCFAIL
Modify the application that generated the message to ensure that it places in the RFNVS field all parameters that are required for the specified command.
This reason code occurs only in the DLREA field in an MQDLH structure, or in the MDFB field in the MQMD of a report message.
A JMS ConnectionConsumer found a message that exceeds the queue's backout threshold. The queue does not have a backout requeue queue defined, so the message was processed as specified by the disposition options in the MDREP field in the MQMD of the message.
On queue managers that do not support the BackoutThreshold and BackoutRequeueQName queue attributes, JMS ConnectionConsumer uses a value of 20 for the backout threshold. When the MDBOC of a message reaches this threshold, the message is processed as specified by the disposition options.
If the MDREP field specifies one of the ROEXC* options, this reason code appears in the MDFB field of the report message. If the MDREP field specifies RODLQ, or the disposition report options are left as default, this reason code appears in the DLREA field of the MQDLH.
None
Investigate the cause of the backout count being greater than the threshold. To correct this, define the backout queue for the queue concerned.
This reason code occurs only in the DLREA field in an MQDLH structure, or in the MDFB field in the MQMD of a report message.
While performing Point-to-Point messaging, JMS encountered a message matching none of the selectors of ConnectionConsumers monitoring the queue. To maintain performance, the message was processed as specified by the disposition options in the MDREP field in the MQMD of the message.
If the MDREP field specifies one of the ROEXC* options, this reason code appears in the MDFB field of the report message. If the MDREP field specifies RODLQ, or the disposition report options are left as default, this reason code appears in the DLREA field of the MQDLH.
None
To correct this, ensure that the ConnectionConsumers monitoring the queue provide a complete set of selectors. Alternatively, set the QueueConnectionFactory to retain messages.
This reason code is generated when JMS encounters a message that it is unable to parse. If such a message is encountered by a JMS ConnectionConsumer, the message is processed as specified by the disposition options in the MDREP field in the MQMD of the message.
If the MDREP field specifies one of the ROEXC* options, this reason code appears in the MDFB field of the report message. If the MDREP field specifies RODLQ, or the disposition report options are left as default, this reason code appears in the DLREA field of the MQDLH.
None
Investigate the origin of the message.
This condition is detected when an object is created.
CCWARN
None. This reason code is only used to identify the corresponding event message.
This condition is detected when an object is changed.
CCWARN
None. This reason code is only used to identify the corresponding event message.
This condition is detected when an object is deleted.
CCWARN
None. This reason code is only used to identify the corresponding event message.
This condition is detected when an object is refreshed.
CCWARN
None. This reason code is only used to identify the corresponding event message.
This condition is detected when a connection cannot be established due to an SSL key-exchange or authentication failure.
CCWARN
None. This reason code is only used to identify the corresponding event message.
An API exit function returned an invalid response code, or failed in some other way.
CCFAIL
Check the exit code to ensure that the exit is returning valid values. Consult the FFST record to see if it contains more detail about the problem.
The queue manager encountered an error while attempting to initialize the execution environment for an API exit function.
CCFAIL
Consult the FFST record to obtain more detail about the problem.
The queue manager encountered an error while attempting to terminate the execution environment for an API exit function.
CCFAIL
Consult the FFST record to obtain more detail about the problem.
On an MQCONNX call, the MQSCO structure is not valid for one of the following reasons:
CCFAIL
Correct the definition of the MQSCO structure.
On an MQCONN or MQCONNX call, the location of the key repository is either not specified, not valid, or results in an error when used to access the key repository. The location of the key repository is specified by one of the following:
For the MQCONNX call, if both MQSSLKEYR and SCKR are specified, the latter is used.
CCFAIL
Specify a valid location for the key repository.
On an MQCONN or MQCONNX call, the configuration string for the cryptographic hardware is not valid, or results in an error when used to configure the cryptographic hardware. The configuration string is specified by one of the following:
For the MQCONNX call, if both MQSSLCRYP and SCCH are specified, SCCH is used.
CCFAIL
Specify a valid configuration string for the cryptographic hardware.
On an MQCONNX call, the SCAIC field in the MQSCO structure specifies a value that is less than zero.
CCFAIL
Specify a value for SCAIC that is zero or greater.
On an MQCONNX call, the MQSCO structure does not specify the address of the MQAIR records correctly. One of the following applies:
CCFAIL
Ensure that one of SCAIO or SCAIP is zero and the other nonzero. Ensure that the field used points to accessible storage.
On an MQCONNX call, an MQAIR record is not valid for one of the following reasons:
CCFAIL
Correct the definition of the MQAIR record.
On an MQCONNX call, the AITYP field in an MQAIR record specifies a value that is not valid.
CCFAIL
Specify AITLDP for AITYP.
On an MQCONNX call, the AICN field in an MQAIR record specifies a value that is not valid.
CCFAIL
Specify a valid connection name.
On an MQCONNX call, an LDAP user name in an MQAIR record is not specified correctly. One of the following applies:
CCFAIL
Ensure that one of AILUO or AILUP is zero and the other nonzero. Ensure that the field used points to accessible storage.
On an MQCONNX call, the AILUL field in an MQAIR record specifies a value that is less than zero.
CCFAIL
Specify a value for AILUL that is zero or greater.
On an MQCONNX call, the AIPW field in an MQAIR record specifies a value when no value is allowed.
CCFAIL
Specify a value that is blank or null.
An MQCONN or MQCONNX call was issued with SSL configuration options specified, but the SSL environment had already been initialized. The connection to the queue manager completed successfully, but the SSL configuration options specified on the call were ignored; the existing SSL environment was used instead.
CCWARN
If the application must be run with the SSL configuration options defined on the MQCONN or MQCONNX call, use the MQDISC call to sever the connection to the queue manager and then terminate the application. Alternatively, run the application later when the SSL environment has not been initialized.
On an MQCONNX call, the MQCNO structure does not specify the MQSCO structure correctly. One of the following applies:
CCFAIL
Ensure that one of CNSCO or CNSCP is zero and the other nonzero. Ensure that the field used points to accessible storage.
An MQCONN or MQCONNX call was issued with SSL configuration options specified, but an error occurred during the initialization of the SSL environment.
CCFAIL
Check that the SSL installation is correct.
A connection to a queue manager was requested, specifying SSL encryption. However, the connection mode requested is one that does not support SSL (for example, bindings connect).
This reason code occurs only with Java applications.
CCFAIL
Modify the application to request client connection mode, or to disable SSL encryption.
JSSE reported an error (for example, while connecting to a queue manager using SSL encryption). The MQException object containing this reason code references the Exception thrown by JSSE; this can be obtained by using the MQException.getCause() method. From JMS, the MQException is linked to the thrown JMSException.
This reason code occurs only with Java applications.
CCFAIL
Inspect the causal exception to determine the JSSE error.
The application attempted to connect to the queue manager using SSL encryption, but the distinguished name presented by the queue manager does not match the specified pattern.
This reason code occurs only with Java applications.
CCFAIL
Check the certificates used to identify the queue manager. Also check the value of the sslPeerName property specified by the application.
The application specified a peer name of incorrect format.
This reason code occurs only with Java applications.
CCFAIL
Check the value of the sslPeerName property specified by the application.
A connection to a queue manager was requested, specifying SSL encryption. However, JSSE reported that it does not support the CipherSuite specified by the application.
This reason code occurs only with Java applications.
CCFAIL
Check the CipherSuite specified by the application. Note that the names of JSSE CipherSuites differ from their equivalent CipherSpecs used by the queue manager.
Also, check that JSSE is correctly installed.
A connection to a queue manager was requested, specifying SSL encryption. However, the certificate presented by the queue manager was found to be revoked by one of the specified CertStores.
This reason code occurs only with Java applications.
CCFAIL
Check the certificates used to identify the queue manager.
A connection to a queue manager was requested, specifying SSL encryption. However, none of the CertStore objects provided by the application could be searched for the certificate presented by the queue manager. The MQException object containing this reason code references the Exception encountered when searching the first CertStore; this can be obtained using the MQException.getCause() method. From JMS, the MQException is linked to the thrown JMSException.
This reason code occurs only with Java applications.
CCFAIL
Inspect the causal exception to determine the underlying error. Check the CertStore objects provided by your application. If the causal exception is a java.lang.NoSuchElementException, ensure that your application is not specifying an empty collection of CertStore objects.
The Operator parameter supplied is not valid. If the Operator is an input variable then the operator is not an MQCFOP_* constant value. If the Operator is an output variable then the parameter pointer is not valid, or it points to read-only storage. (It is not always possible to detect parameter pointers that are not valid; if not detected, unpredictable results occur.)
CCFAIL
Correct the parameter.
On an MQPUT or an MQPUT1 call, a PCF integer or string filter parameter structure MQCF*F in the message data is not valid.
CCFAIL
Correct the definition of the MQCF*F structure. Ensure that the fields are set correctly.
On an MQPUT or an MQPUT1 call, a PCF group parameter structure MQCFGR in the message data is not valid.
CCFAIL
Correct the definition of the MQCFGR structure, and ensure that the fields are set correctly.
String length not valid. The MQCFBS StringLength field value was not valid. The value was negative or greater than the maximum permitted length of the parameter specified in the Parameter field.
CCFAIL
Specify a valid string length for the parameter.
Structure length not valid. The MQCF** StrucLength field value was not valid.
CCFAIL
Specify a valid structure length.
Parameter count not valid. The MQCFGR ParameterCount field value was not valid.
CCFAIL
Specify a valid parameter count.
Parameter identifier is not valid. The MQCF** Parameter field value was not valid.
CCFAIL
Specify a valid parameter identifier.
Operator is not valid. The MQCF** Operator field value was not valid.
CCFAIL
Specify a valid operator.
Duplicate parameter. A duplicate MQCFBS parameter was detected.
CCFAIL
Check for and remove duplicate parameters.
Filter value length not valid. The MQCFSF FilterValueLength field value was not valid. The value was negative or greater than the maximum permitted length of the parameter specified in the Parameter field.
CCFAIL
Specify a valid string length for the parameter.
Too many filters. The command contained more than the maximum permitted number of filter structures.
CCFAIL
Check that no more than the maximum permitted number of filters are contained within the command.
Notices |
Downloads |
Library |
Support |
Feedback
![]() ![]() |
reason |