Orphaned SYSTEM.MANAGED.DURABLE.* queue in Websphere MQ

960 Views Asked by At

I have a queue 'SYSTEM.MANAGED.DURABLE.ABCD***109' getting messages all the time and no one to consume it. I tried to get its subscription but got the following result ,

dis sub(*) where (DEST LK 'SYSTEM.MANAGED.DURABLE.ABCD***109')   

AMQ8096: IBM MQ subscription inquired.
   SUBID(414D5120******************44A0109)
   SUB(false)
   DEST(SYSTEM.MANAGED.DURABLE.ABCD***44A0108)

then i tried to view the subscription via the subscription id listed,

     dis sbstatus(*) where ( SUBID EQ '414D5120***44A0109')
AMQ8099: IBM MQ subscription status inquired.
   SUB(false)
   SUBID(414D5120***44A0109)

I don't have a subscription named "false" . I'm unable to clear or delete this queue as it is opened. I'm unable to view the open connection as well.

    dis conn(*) where (objname eq 'SYSTEM.MANAGED.DURABLE.ABCD***44A0108')
AMQ8461: Connection identifier not found.

I need to cleanup & delete this queue to avoid disk space issue.

1

There are 1 best solutions below

2
JoshMc On

You can remove SUB objects with only the SUBID, try to remove it with this command:

DELETE SUB SUBID('414D5120***44A0109')

Note that the command is not specifying the SUB name, just the SUB keyword.


Before you delete it, if you are interested in seeing what the sub name actually is, you may want to try running the following command to dump the subscriptions:

amqldmpa -m <QueueManager> -c T -f /var/mqm/errors/amqldmpa_topic.out

Inside of the file /var/mqm/errors/amqldmpa_topic.out search for the SUBID in question and look for text similar to this:

Subscriber entry
{
  SubId ( 414D5120***44A0109)
  SubNameString ( SUBNAME_HERE )
  TopicString ( TOPIC/STRING/HERE )
   <more lines of information go here>
}

What does it show for the SubNameString field? Note that in the 8.0.0.6 version I ran this against it seems to pad each field with a leading and trailing space with the exception of SubId which did not have a trailing space.