What it means
Each queue has a maximum depth (MAXDEPTH). When the current depth reaches it, new puts are refused with 2053. On a transmission queue the same limit applies, so a stopped channel can make puts to remote queues fail. The code also appears in report messages and in the Queue Full event.
Typical causes
- The consuming application is stopped, abended or not triggered.
- The consumer runs but is slower than the arrival rate, for example after a traffic spike.
- A bad message is being rolled back again and again, blocking the consumer.
- A channel is stopped or retrying, so its transmission queue fills up.
- MAXDEPTH is too low for normal peaks.
How to fix it
- Check depth with DISPLAY QLOCAL(name) CURDEPTH MAXDEPTH.
- Check DISPLAY QSTATUS(name) for IPPROCS; zero means no program has it open for input.
- Restart or scale out the consumer, or fix whatever stopped it.
- If it is a transmission queue, check DISPLAY CHSTATUS and restart the channel.
- Raise MAXDEPTH only if the volume is genuine and storage allows; it does not fix a dead consumer.
Example
Illustrative only; names and values are invented.
MQPUT failed CompCode=2 Reason=2053 Queue=APP.ORDER.IN
DISPLAY QLOCAL(APP.ORDER.IN) CURDEPTH MAXDEPTH
QUEUE(APP.ORDER.IN) CURDEPTH(5000) MAXDEPTH(5000)