Appendix C. Reason codes

The following reason codes can occur in addition to those documented for the WebSphere MQ MQI, in the WebSphere MQ Application Programming Reference.

Note:
The following list is in alphabetic order.

MQRC_ATTRIBUTE_LOCKED (6104 or X'17D8')
An attempt has been made to change the value of an attribute of an object while that object is open, or, for an ImqQueueManager object, while that object is connected. Certain attributes cannot be changed in these circumstances. Close or disconnect the object (as appropriate) before changing the attribute value.

An object may have been connected and/or opened unexpectedly and implicitly in order to perform an MQINQ call. Check the attribute cross-reference table (see Appendix B, MQI cross reference) to determine whether any of your method invocations result in an MQINQ call.

Corrective action: include MQOO_INQUIRE in the ImqObject open options and set them earlier.

MQRC_BINARY_DATA_LENGTH_ERROR (6111 or X'17DF')
The length of the binary data is inconsistent with the length of the target attribute. Zero is a correct length for all attributes.
  • The correct length for an accounting token is MQ_ACCOUNTING_TOKEN_LENGTH.
  • The correct length for an alternate security id is MQ_SECURITY_ID_LENGTH.
  • The correct length for a correlation id is MQ_CORREL_ID_LENGTH.
  • The correct length for a facility token is MQ_FACILITY_LENGTH.
  • The correct length for a group id is MQ_GROUP_ID_LENGTH.
  • The correct length for a message id is MQ_MSG_ID_LENGTH.
  • The correct length for an instance id is MQ_OBJECT_INSTANCE_ID_LENGTH.
  • The correct length for a transaction instance id is MQ_TRAN_INSTANCE_ID_LENGTH.
  • The correct length for a message token is MQ_MSG_TOKEN_LENGTH.

MQRC_BUFFER_NOT_AUTOMATIC (6112 or X'17E0')
A user-defined (and managed) buffer cannot be resized. A user-defined buffer can only be replaced or withdrawn. A buffer must be automatic (system-managed) before it can be resized.

MQRC_CONTEXT_OBJECT_NOT_VALID (6121 or X'17E9')
The ImqPutMessageOptions context reference does not reference a valid ImqQueue object. The object has been previously destroyed.

MQRC_CONTEXT_OPEN_ERROR (6122 or X'17EA')
The ImqPutMessageOptions context reference references an ImqQueue object that could not be opened to establish a context. This may be because the ImqQueue object has inappropriate open options. Inspect the referenced object reason code to establish the cause.

MQRC_CURSOR_NOT_VALID (6105 or X'17D9')
The browse cursor for an open queue has been invalidated since it was last used by an implicit reopen (see Reopen).

Corrective action: set the ImqObject open options explicitly to cover all eventualities so that implicit reopening is not required.

MQRC_DATA_TRUNCATED (6115 or X'17E3')
Data has been truncated when copying from one buffer to another. This might be because the target buffer cannot be resized, or because there is a problem addressing one or other buffer, or because a buffer is being downsized with a smaller replacement.

MQRC_DISTRIBUTION_LIST_EMPTY (6126 or X'17EE')
An ImqDistributionList failed to open because there are no ImqQueue objects referenced.

Corrective action: establish at least one ImqQueue object in which the distribution list reference addresses the ImqDistributionList object, and retry.

MQRC_ENCODING_ERROR (6106 or X'17DA')
The encoding of the (next) message item needs to be MQENC_NATIVE for pasting.

MQRC_INCONSISTENT_FORMAT (6119 or X'17E7')
The format of the (next) message item is inconsistent with the class of object into which the item is being pasted.

MQRC_INCONSISTENT_OBJECT_STATE (6120 or X'17E8')
There is an inconsistency between this object, which is open, and the referenced ImqQueueManager object, which is not connected.

MQRC_INCONSISTENT_OPEN_OPTIONS (6127 or X'17EF')
A method failed because the object is open, and the ImqObject open options are inconsistent with the required operation. The object cannot be reopened implicitly because the IMQ_IMPL_OPEN flag of the ImqObject behavior class attribute is false.

Corrective action: open the object with appropriate ImqObject open options and retry.

MQRC_INSUFFICIENT_BUFFER (6113 or X'17E1')
There is insufficient buffer space available after the data pointer to accommodate the request. This might be because the buffer cannot be resized.

MQRC_INSUFFICIENT_DATA (6114 or X'17E2')
There is insufficient data after the data pointer to accommodate the request.

MQRC_NEGATIVE_LENGTH (6117 or X'17E5')
A negative length has been supplied where a zero or positive length is required.

MQRC_NEGATIVE_OFFSET (6118 or X'17E6')
A negative offset has been supplied where a zero or positive offset is required.

MQRC_NO_BUFFER (6110 or X'17DE')
No buffer is available. For an ImqCache object, one cannot be allocated, denoting an internal inconsistency in the object state that should not occur.

MQRC_NO_CONNECTION_REFERENCE (6109 or X'17DD')
The connection reference is null. A connection to an ImqQueueManager object is required.

MQRC_NOT_CONNECTED (6124 or X'17EC')
A method failed because a required connection to a queue manager was not available, and a connection cannot be established implicitly because the IMQ_IMPL_CONN flag of the ImqQueueManager behavior class attribute is FALSE.

Corrective action: establish a connection to a queue manager and retry.

MQRC_NOT_OPEN (6125 or X'17ED')
A method failed because a WebSphere MQ object was not open, and opening cannot be accomplished implicitly because the IMQ_IMPL_OPEN flag of the ImqObject behavior class attribute is FALSE.

Corrective action: open the object and retry.

MQRC_NULL_POINTER (6108 or X'17DC')
A null pointer has been supplied where a nonnull pointer is either required or implied.

MQRC_REFERENCE_ERROR (6129 or X'17F1')
An object reference is invalid.

There is a problem with the address of a referenced object. At the time of use, the address of the object is nonnull, but is invalid and cannot be used for its intended purpose.

Corrective action: Check that the referenced object is neither deleted nor out of scope, or remove the reference by supplying a null address value.

MQRC_REOPEN_EXCL_INPUT_ERROR (6100 or X'17D4')
An open object does not have the correct ImqObject open options and requires one or more additional options. An implicit reopen (see Reopen) is required but closure has been prevented.

Closure has been prevented because the queue is open for exclusive input and closure might result in the queue being accessed by another process or thread, before the queue is reopened by the process or thread that presently has access.

Corrective action: set the open options explicitly to cover all eventualities so that implicit reopening is not required.

MQRC_REOPEN_INQUIRE_ERROR (6101 or X'17D5')
An open object does not have the correct ImqObject open options and requires one or more additional options. An implicit reopen (see Reopen) is required but closure has been prevented.

Closure has been prevented because one or more characteristics of the object need to be checked dynamically prior to closure, and the open options do not already include MQOO_INQUIRE.

Corrective action: set the open options explicitly to include MQOO_INQUIRE.

MQRC_REOPEN_SAVED_CONTEXT_ERR (6102 or X'17D6')
An open object does not have the correct ImqObject open options and requires one or more additional options. An implicit reopen (see Reopen) is required but closure has been prevented.

Closure has been prevented because the queue is open with MQOO_SAVE_ALL_CONTEXT, and a destructive get has been performed previously. This has caused retained state information to be associated with the open queue and this information would be destroyed by closure.

Corrective action: set the open options explicitly to cover all eventualities so that implicit reopening is not required.

MQRC_REOPEN_TEMPORARY_Q_ERROR (6103 or X'17D7')
An open object does not have the correct ImqObject open options and requires one or more additional options. An implicit reopen (see Reopen) is required but closure has been prevented.

Closure has been prevented because the queue is a local queue of the definition type MQQDT_TEMPORARY_DYNAMIC, that would be destroyed by closure.

Corrective action: set the open options explicitly to cover all eventualities so that implicit reopening is not required.

MQRC_STRUC_ID_ERROR (6107 or X'17DB')
The structure id for the (next) message item, which is derived from the 4 characters beginning at the data pointer, is either missing or is inconsistent with the class of object into which the item is being pasted.

MQRC_STRUC_LENGTH_ERROR (6123 or X'17EB')
The length of a data structure is inconsistent with its content. For an MQRMH, the length is insufficient to contain the fixed fields and all offset data.

MQRC_WRONG_VERSION (6128 or X'17FO')
A method failed because a version number specified or encountered is either incorrect or not supported.

For the ImqCICSBridgeHeader class, the problem is with the version attribute.

Corrective action: If you are specifying a version number, use one that is supported by the class. If you are receiving message data from another program, ensure that both programs are using consistent and supported version numbers.

MQRC_ZERO_LENGTH (6116 or X'17E4')
A zero length has been supplied where a positive length is either required or implied.

The following list shows reason codes in numeric order.

Reason code Decimal Hex.
MQRC_REOPEN_EXCL_INPUT_ERROR 6100 X'000017D4'
MQRC_REOPEN_INQUIRE_ERROR 6101 X'000017D5'
MQRC_REOPEN_SAVED_CONTEXT_ERR 6102 X'000017D6'
MQRC_REOPEN_TEMPORARY_Q_ERROR 6103 X'000017D7'
MQRC_ATTRIBUTE_LOCKED 6104 X'000017D8'
MQRC_CURSOR_NOT_VALID 6105 X'000017D9'
MQRC_ENCODING_ERROR 6106 X'000017DA'
MQRC_STRUC_ID_ERROR 6107 X'000017DB'
MQRC_NULL_POINTER 6108 X'000017DC'
MQRC_NO_CONNECTION_REFERENCE 6109 X'000017DD'
MQRC_NO_BUFFER 6110 X'000017DE'
MQRC_BINARY_DATA_LENGTH_ERROR 6111 X'000017DF'
MQRC_BUFFER_NOT_AUTOMATIC 6112 X'000017E0'
MQRC_INSUFFICIENT_BUFFER 6113 X'000017E1'
MQRC_INSUFFICIENT_DATA 6114 X'000017E2'
MQRC_DATA_TRUNCATED 6115 X'000017E3'
MQRC_ZERO_LENGTH 6116 X'000017E4'
MQRC_NEGATIVE_LENGTH 6117 X'000017E5'
MQRC_NEGATIVE_OFFSET 6118 X'000017E6'
MQRC_INCONSISTENT_FORMAT 6119 X'000017E7'
MQRC_INCONSISTENT_OBJECT_STATE 6120 X'000017E8'
MQRC_CONTEXT_OBJECT_NOT_VALID 6121 X'000017E9'
MQRC_CONTEXT_OPEN_ERROR 6122 X'000017EA'
MQRC_STRUC_LENGTH_ERROR 6123 X'000017EB'
MQRC_NOT_CONNECTED 6124 X'000017EC'
MQRC_NOT_OPEN 6125 X'000017ED'
MQRC_DISTRIBUTION_LIST_EMPTY 6126 X'000017EE'
MQRC_INCONSISTENT_OPEN_OPTIONS 6127 X'000017EF'
MQRC_WRONG_VERSION 6128 X'000017F0'
MQRC_REFERENCE_ERROR 6129 X'000017F1'



© IBM Corporation 2001. All Rights Reserved