MQ Error Code Encyclopedia

IBM MQ failures speak several languages at once. Your Java client prints Reason 2035. The queue manager error log shows AMQ8077 with a sentence about authorization. The channel panel shows LASTCHLERR with SSL text. On z/OS the operator sees CSQ messages during startup. Beginners treat these as unrelated mysteries; experienced operators map them to layers—network, channel, security, object, application logic. This encyclopedia is the index for that map: dedicated reference pages for MQRC reason codes, AMQ message families, CSQ on mainframe, SSL and TLS errors, and channel-specific failures. Use it when onboarding, writing runbooks, or building searchable internal wikis. Each child page goes deeper; this page explains how the families relate and the order you troubleshoot so you do not RESET CHANNEL when the real issue is MQRC 2085 unknown queue name.

Layers of IBM MQ Errors

Layer one is reachability: can TCP connect to the listener? PING CHANNEL and telnet to CONNAME port. Layer two is channel security: CHLAUTH, TLS handshake, MCAUSER mapping—channel may never reach RUNNING. Layer three is queue manager availability: dspmq Running, no 2059. Layer four is object access: 2035, 2085, 2053 queue full. Layer five is application semantics: wrong reply queue, poison message loops, idempotency. Error codes cluster by layer; carrying the wrong playbook wastes the maintenance window.

Error families in this encyclopedia
FamilyWhere seenReference page
MQRC reason codesApplication MQI, CompCode Reasonevery-mq-mqrc-code
AMQ messagesAMQERR logs, FFSTevery-mq-amq-message
CSQ messagesz/OS operator logevery-mq-csq-message
SSL / TLS errorsAMQERR, LASTCHLERRevery-mq-ssl-error
Channel errorsCHSTATUS, AMQ channelevery-mq-channel-error

MQRC Reason Codes

Reason codes are integers defined in cmqc.h and language bindings. MQRC_OK is zero success. Common failures include 2035 NOT_AUTHORIZED, 2059 QM_NOT_AVAILABLE, 2085 UNKNOWN_OBJECT_NAME, 2053 Q_FULL, 2033 NO_MSG_AVAILABLE, 2009 CONNECTION_BROKEN. Applications should log CompCode, Reason, and the object name from MQOD on every failure. Operators correlate the same Reason with AMQERR seconds later. The every-mq-mqrc-code page groups codes by category with beginner explanations and links to focused tutorials like 2035-errors and 2085-errors where they exist.

text
1
2
3
4
5
6
7
8
Application log example: MQOPEN failed CompCode=2 Reason=2085 Object: ORDERS.IN type=queue Operator correlation: dspmq -m QM1 DISPLAY QLOCAL('ORDERS.IN') grep 2085 /var/mqm/qmgrs/QM1/errors/AMQERR01.LOG

AMQ Messages

AMQ messages are human-readable diagnostics. AMQ6xxx often relates to objects and commands; AMQ9xxx spans many subsystems. Search AMQERR01.LOG with the message number. Include three lines before and after in support tickets. fmtmqfnc on some platforms formats FFST related to AMQ. Do not paraphrase the message ID—IBM support matches exact IDs. Planned encyclopedia pages will catalog frequent AMQ texts alongside remediation.

CSQ Messages on z/OS

Queue sharing groups, coupling facility structures, and started task lifecycle produce CSQ codes operators learn during IPL. Distributed-only admins joining a mainframe MQ team should read CSQ alongside AMQ when applications use the CICS-MQ bridge or IMS. CSQ commands tutorial links operational verbs; CSQ message encyclopedia pages will list common codes with plain language.

SSL and Channel Error Crossover

Certificate expiry, cipher mismatch, and incomplete chain errors appear in AMQERR during bind and in DISPLAY CHSTATUS LASTCHLERR. SSL tutorial pages cover GSKit and repositories; encyclopedia SSL entries tie symptom strings to fix order: verify label, chain, cipher spec on both ends, then CHLAUTH. Channel error encyclopedia entries cover sequence number, bind failure, and authentication blocked separately from TLS.

How to Use This Encyclopedia in Incidents

  1. Record application Reason code and API call (OPEN, PUT, GET, CONN).
  2. Record queue manager name, queue or topic name, channel name if remote.
  3. dspmq and DISPLAY CHSTATUS as appropriate.
  4. Search AMQERR for same timestamp window.
  5. Open the matching encyclopedia family page; follow linked deep tutorial.
  6. Apply one fix; retest; avoid random RESET without evidence.

Building Team Runbooks

Paste encyclopedia links into Splunk or ServiceNow alert templates. When Reason 2053 fires, link to queue full tutorial. Standardize vocabulary: say MQRC 2035 not unauthorized error thing. Train developers to paste Reason in tickets, not only Java stack traces without MQ fields.

Explainer: Three Alarm Systems

MQRC is the beeper in your pocket. AMQ is the loudspeaker in the building. CSQ is the mainframe control room panel. Same fire, different speakers—you listen to the right one for where you stand.

Explain Like I'm Five: Error Encyclopedia

When something breaks, IBM MQ shows a number and a sentence and sometimes a channel note. The encyclopedia is the dictionary that tells you what each word means and what to try first.

Practice Exercises

Exercise 1

Provoke 2085 in lab; find the same failure in AMQERR and application log.

Exercise 2

Create a one-page cheat sheet linking five common MQRC to DISPLAY commands.

Exercise 3

List which error family you check first for client versus server-side failures.

Frequently Asked Questions

Frequently Asked Questions

Test Your Knowledge

Test Your Knowledge

1. MQRC is returned to:

  • Applications using MQI
  • Only operators
  • DNS servers
  • JCL only

2. AMQ messages appear in:

  • Queue manager error logs
  • Application stdout only
  • CICS map only
  • SMTP

3. CSQ messages are associated with:

  • z/OS MQ subsystem
  • Kafka
  • HTTP only
  • COBOL compile

4. First triage step for any code:

  • Capture exact code and timestamp from logs
  • RESET CLUSTER immediately
  • dltmqm
  • Disable CHLAUTH
Published
Read time22 min
AuthorMainframeMaster
Verified: IBM MQ 9.4 documentation