Author |
Message
|
techno |
Posted: Thu Dec 23, 2004 11:57 am Post subject: SYSTEM.JMS.D.SUBSCRIBER.QUEUE |
|
|
Chevalier
Joined: 22 Jan 2003 Posts: 429
|
SYSTEM.JMS.D.SUBSCRIBER.QUEUE
When does this queue gets cleared? I am seeing this growing.. Does it grow when durable subscriber register and not consume these messages?
Can this be cleared?
Thanks |
|
Back to top |
|
 |
RogerLacroix |
Posted: Thu Dec 23, 2004 12:29 pm Post subject: |
|
|
 Jedi Knight
Joined: 15 May 2001 Posts: 3264 Location: London, ON Canada
|
Hi,
Isn't it the other way around. Messages are building because subscribers are not connecting and picking up there 'durable' messages.
Regards,
Roger Lacroix _________________ Capitalware: Transforming tomorrow into today.
Connected to MQ!
Twitter |
|
Back to top |
|
 |
techno |
Posted: Thu Dec 23, 2004 2:03 pm Post subject: |
|
|
Chevalier
Joined: 22 Jan 2003 Posts: 429
|
So, what can be done to those messages? If a subscriber app is down, curdepth increases. It may reach max-q-depth. Other subscriber suffer..
What is the solution here? Expiring subscriptions?
Thanks |
|
Back to top |
|
 |
bower5932 |
Posted: Mon Dec 27, 2004 7:02 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
You can set the expiry on the messages. However, you have to have something walking the queue to notify WMQ that the message has expired and can be thrown away.
A solution for you might be to have each subscriber have its own queue so that all of them don't fill up the single queue. |
|
Back to top |
|
 |
bower5932 |
Posted: Mon Dec 27, 2004 7:07 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
One other point to make: Don't use durable subscribers unless you have to. There is no point in filling up the queue with messages for a subscriber that won't be coming back. To be honest, this is one of the biggest problems my group sees. We then discuss the difference between durable (coming back and needs to see publications published while away) and non-durable (doesn't need to see what was published while away) and most people realize that they just wanted non-durable. |
|
Back to top |
|
 |
suri |
Posted: Mon Dec 27, 2004 7:59 am Post subject: |
|
|
Apprentice
Joined: 16 May 2004 Posts: 39 Location: NewYork
|
|
Back to top |
|
 |
techno |
Posted: Mon Dec 27, 2004 9:03 am Post subject: |
|
|
Chevalier
Joined: 22 Jan 2003 Posts: 429
|
Thank you. Does browse of msgs remove expired msgs?
Thanks |
|
Back to top |
|
 |
clindsey |
Posted: Mon Dec 27, 2004 10:15 am Post subject: |
|
|
Knight
Joined: 12 Jul 2002 Posts: 586 Location: Dallas, Tx
|
Quote: |
Thank you. Does browse of msgs remove expired msgs?
|
Yes |
|
Back to top |
|
 |
kingsley |
Posted: Mon Dec 27, 2004 11:01 am Post subject: |
|
|
Disciple
Joined: 30 Sep 2001 Posts: 175 Location: Hursley
|
On MVS, the V5.3 QueueManager automatically removes the messages if the expiry interval is set
The feature is not available on Distributed systems. I am expecting IBM to include this in next version for Distributed systems.
Last edited by kingsley on Mon Dec 27, 2004 1:22 pm; edited 1 time in total |
|
Back to top |
|
 |
jefflowrey |
Posted: Mon Dec 27, 2004 11:24 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
kingsley wrote: |
The feature is not available on Distributed systems. I am expecting IBM to include this in V5.4 for Distributed systems. |
You will be waiting quite a while, then.
The next release will be numbered version 6....  _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
ncmj |
Posted: Thu Oct 20, 2005 10:24 am Post subject: |
|
|
Newbie
Joined: 20 Oct 2005 Posts: 7
|
I'm meeting the same problem (SYSTEM.JMS.D.SUBSCRIBER.QUEUE always growing). I do use durable subscriptions.
This queue seems to contains undistributed messages for the subscriptions
that are not cleanly unregistered.
I found a tool (Unsubscribe.java) on
http://www.developer.ibm.com/isv/tech/sampmq.html
that is supposed to suppress orphean subscriptions on the base of informations dumped by the tool /usr/lpp/mqm/samp/bin/amqspsd.
Strangely, this tool says: NOT_REGISTERED ??? when I execute it.
Why ?  |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Oct 20, 2005 10:29 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
ncmj wrote: |
I'm meeting the same problem (SYSTEM.JMS.D.SUBSCRIBER.QUEUE always growing). I do use durable subscriptions. |
There's no good reason to use durable subscriptions in most environments.
Really!
ncmj wrote: |
Strangely, this tool says: NOT_REGISTERED ??? when I execute it. |
Be more specific. Show the full output. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
ncmj |
Posted: Fri Oct 21, 2005 1:52 am Post subject: |
|
|
Newbie
Joined: 20 Oct 2005 Posts: 7
|
Thanks for your response.
What I got with amqsdsp:
==================
MQSeries Message Broker Dumper
Start time: Fri Oct 21 11:23:31 2005
Broker Relations
----------------
QMgrName:
MQM_TESTWEB01
Parent:
None
Children:
None
Streams supported
-----------------
SYSTEM.BROKER.DEFAULT.STREAM
SYSTEM.BROKER.ADMIN.STREAM
Subscribers
-----------
StreamName: SYSTEM.BROKER.ADMIN.STREAM
Topic: MQ/MQM_TESTWEB01 /StreamSupport
BrokerCount: 0
ApplCount: 1
AnonymousCount: 0
RegistrationQMgrName: MQM_TESTWEB01
RegistrationQName: SYSTEM.BROKER.INTER.BROKER.COMMUNICATIONS
RegistrationCorrellId: 414D51590000010100000000000000000000000000000000
RegistrationUserIdentifier: mqm
RegistrationOptions: 17 : MQREGO_CORREL_ID_AS_IDENTITY MQREGO_NEW_PUBLICATIONS_ONLY
RegistrationTime: 2005092816044273
Topic: MQ/S/MQM_TESTWEB01 /Subscribers/Identities/*
BrokerCount: 0
ApplCount: 1
AnonymousCount: 1
StreamName: SYSTEM.BROKER.DEFAULT.STREAM
Topic: Client/batch/cyclic
BrokerCount: 0
ApplCount: 1
AnonymousCount: 0
RegistrationQMgrName: MQM_TESTWEB01
RegistrationQName: SYSTEM.JMS.D.SUBSCRIBER.QUEUE
RegistrationCorrellId: 414D51204D514D5F54455354574542304357D55B20002D05
RegistrationUserIdentifier: mqm
RegistrationOptions: 3145729 : MQREGO_CORREL_ID_AS_IDENTITY
RegistrationTime: 2005102109222287
Topic: MQ/S/MQM_TESTWEB01 /Subscribers/Identities/*
BrokerCount: 0
ApplCount: 1
AnonymousCount: 1
Now, when I execute Unsubscribe.java with correlId found previously
(RegistrationCorrellId: 414D51590000010100000000000000000000000000000000)
I got:
=============================================
Deregister topic: Client/batch/cyclic
Deregister stream: SYSTEM.BROKER.DEFAULT.STREAM
Deregister queue: SYSTEM.JMS.D.SUBSCRIBER.QUEUE
Deregister correlid: AMQ MQM_TESTWEB0CWÕ[ 6
Unsubscribe failed for reason NOT_REGISTERED
1 Deregistrations attempted. 0 successfully removed.
Actually I'm not sure of what I have to indicate for the "Deregister queue"
with this tool, I'm not sure that the CorrelId is the id I have to give, since the client Id I use for the durable subscriptions is something else (I use an JSESSION ID actually)...
FYI, in my case durable subscription are created in a servlet, and are not deregister in the case of the servlet engine is stopped "brutally".
Thanks for your help. |
|
Back to top |
|
 |
ncmj |
Posted: Fri Oct 21, 2005 1:58 am Post subject: |
|
|
Newbie
Joined: 20 Oct 2005 Posts: 7
|
same result with the Id
414D51204D514D5F54455354574542304357D55B20002D05
(Actually, the right one for the subscription I wanted to suppress in the example above) |
|
Back to top |
|
 |
ncmj |
Posted: Fri Oct 21, 2005 2:16 am Post subject: |
|
|
Newbie
Joined: 20 Oct 2005 Posts: 7
|
I tried the 2 possible ways with the Unsubscribe tool:
- using directly the log provided by amqspsd
- giving one specific corrrelId
Same result each time. |
|
Back to top |
|
 |
|