What it means
MQOPEN, MQPUT1 or MQSUB asked for an object that this queue manager does not know. MQ names are case-sensitive and can be up to 48 characters, so small differences count. The connection worked; the problem is the object name.
With clusters, the queue may exist elsewhere but have no route from here. On z/OS, a definition with QSGDISP(GROUP) cannot be opened directly. The code can also appear during REFRESH CLUSTER.
Typical causes
- A typo or wrong case in the queue name (app.request is not APP.REQUEST).
- The program connected to a different queue manager than intended, for example a test one.
- The name came from a parameter or file and is blank or badly padded.
- The queue was never defined in this environment, or was deleted.
- A cluster queue is not known to this queue manager, or ObjectQMgrName points to the wrong place.
How to fix it
- Record the exact name used, including case and trailing characters.
- Confirm which queue manager the program connected to.
- Run DISPLAY QUEUE(name) on that queue manager; for clusters also DISPLAY QCLUSTER(name).
- Define the missing queue, or fix the name in the program's configuration.
- For cluster queues, leave ObjectQMgrName blank and use output-only open options.
Example
Illustrative only; names and values are invented.
MQOPEN failed CompCode=2 Reason=2085 Queue=APP.REQUEST.QUEUE QMgr=QM01
DISPLAY QUEUE(APP.REQUEST.QUEUE) -> object not found on QM01