Some cases where the MQINQ call fails
If you open an alias to inquire about its attributes, you are returned the attributes of the alias queue (the WebSphere® MQ object used to access another queue), not those of the base queue.
However, the definition of the base queue to which the alias resolves is also opened by the queue manager, and if another program changes the usage of the base queue in the interval between your MQOPEN and MQINQ calls, your MQINQ call fails and returns the MQRC_OBJECT_CHANGED reason code. The call also fails if the attributes of the alias queue object are changed.
Similarly, when you open a remote queue to inquire about its attributes, you are returned the attributes of the local definition of the remote queue only.
- For integer attributes, the corresponding elements of
IntAttrs
are set to MQIAV_NOT_APPLICABLE. - For character attributes, the corresponding portions of the
CharAttrs
string are set to asterisks.
If you specify one or more selectors that are not valid for the type of object attributes upon which you are inquiring, the MQINQ call fails and returns the MQRC_SELECTOR_ERROR reason code.
You cannot call MQINQ to look at a model queue; use either the MQSC facility or the commands available on your platform.