CURDEPTH of a queue is greater than MAXDEPTH

Technote (troubleshooting)


Problem(Abstract)

Your WebSphere MQ (WMQ) queue has the current depth greater than its maximum depth.

Symptom

The WebSphere MQ explorer and runmqsc may show CURDEPTH > MAXDEPTH:

dis q(ET.LQ
    1 : dis q(ET.LQ)
AMQ8409: Display Queue details.
  DESCR(WebSphere MQ Default Local Queue)
  PROCESS( )                      BOQNAME( )
  INITQ( )                        TRIGDATA( )
  CLUSTER( )                      CLUSNL( )
  QUEUE(SC1.ESB.REPLY.R)          CRDATE(2005-06-24)
  CRTIME(15.51.34)                ALTDATE(2005-07-12)
  ALTTIME(10.43.35)               GET(ENABLED)
  PUT(ENABLED)                    DEFPRTY(0)
  DEFPSIST(NO)                    
MAXDEPTH(5000)
  MAXMSGL(4194304)                BOTHRESH(0)
  SHARE                           DEFSOPT(SHARED)
  HARDENBO                        MSGDLVSQ(PRIORITY)
  RETINTVL(999999999)             USAGE(NORMAL)
  NOTRIGGER                       TRIGTYPE(FIRST)
  TRIGDPTH(1)                     TRIGMPRI(0)
  QDEPTHHI(2)                     QDEPTHLO(1)
  QDPMAXEV(DISABLED)              QDPHIEV(DISABLED)
  QDPLOEV(ENABLED)                QSVCINT(999999999)
  QSVCIEV(NONE)                   DISTL(NO)
  NPMCLASS(NORMAL)                DEFTYPE(PREDEFINED)
  TYPE(QLOCAL)                    SCOPE(QMGR)
  DEFBIND(NOTFIXED)               IPPROCS(0)
  OPPROCS(0)                      
CURDEPTH(187025)


Cause

If your WMQ application program backs out the unit of work, or if WebSphere MQ has to back it out, the messages in the unit of work will be placed back on the queue and the CURDEPTH value will be increased even if it exceeds the MAXDEPTH value.

Resolving the problem

Make sure your application is committing messages after the unit of work has been completed. This will avoid large numbers of messages being rolled back to the queue and exceeding the MAXDEPTH limit.


Additional information
You have an application which was getting messages off the queue as a unit of work with the MQGMO_SYNCPOINT flag, but the unit of work was backed out. When a program issues MQGET for a message, WebSphere MQ decrements the CURDEPTH value even if the MQGET is part of a unit of work. If that program backs out the unit of work, or if WebSphere MQ has to back it out, the messages in the unit of work will be placed back on the queue and the CURDEPTH value will be increased even if it now exceeds the MAXDEPTH value.

Historical Number

01322 004 000

Product Alias/Synonym

WMQ MQ

Rate this page:

(0 users)Average rating

Document information


More support for:

WebSphere MQ
Documentation

Software version:

5.1, 5.3, 5.3.1, 6.0, 7.0, 7.0.1, 7.1, 7.5

Operating system(s):

AIX, HP NonStop, HP-UX, Linux, OS/390, OpenVMS, Solaris, TRU64 UNIX, Windows

Reference #:

1212887

Modified date:

2013-02-19

Translate my page

Machine Translation

Content navigation