Some cases where the MQINQ call fails
If you open an alias to inquire about its attributes, we are returned the attributes of the alias queue (the IBM 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, we are returned the attributes of the local definition of the remote queue only.
If you specify one or more selectors that are not valid for the type of queue attributes upon which we are inquiring, the MQINQ call completes with a warning and sets the output as follows:- 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 we are inquiring, the MQINQ call fails and returns the MQRC_SELECTOR_ERROR reason code.
We cannot call MQINQ to look at a model queue; use either the MQSC facility or the commands available on the platform.
Parent topic: Inquiring about and setting object attributes