|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
MQRCCF_SUBSCRIPTION_LOCKED Reason code 3156 |
« View previous topic :: View next topic » |
Author |
Message
|
wenlanlu |
Posted: Mon Nov 22, 2004 2:01 pm Post subject: MQRCCF_SUBSCRIPTION_LOCKED Reason code 3156 |
|
|
Newbie
Joined: 22 Nov 2004 Posts: 3
|
I am having this problem for a long time. Maybe someone can help me.
We have one JMS server and multiple JMS clients to do pub/sub (durable) to/from their own topics, each client has different name.
When network has short time outage, publisher client can reconnect to the topic with no problem, but durable subscriber try to reconnect to the topics, very often got this error:
Broker command failed: MQRCCF_SUBSCRIPTION_LOCKED Reason code 3156
com.ibm.mq.jms.BrokerCommandFailedException: Broker command failed: MQRCCF_SUBSCRIPTION_LOCKED Reason code 3156
Sometimes it can be resolved by restart the JMS client, but lots of time after restart, the lock is still there until I restart the JMS server. Any body has any idea on this?
Thanks,
wenlanlu |
|
Back to top |
|
 |
bower5932 |
Posted: Tue Nov 23, 2004 8:32 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
|
Back to top |
|
 |
wenlanlu |
Posted: Tue Nov 23, 2004 12:37 pm Post subject: |
|
|
Newbie
Joined: 22 Nov 2004 Posts: 3
|
I am using that Queue manager's default broker. eg. Qmgr name is: aaa.bbb.ccc When I start the broker after I started Qmgr: I just use "strmqbrk -m aaa.bbb.ccc". Is that answer your question?
According to my coworker, when the network is down, the durable subscriber is disconnected from the broker, the JMS server should automatically clean up the internal state to allow next the same durable subscriber to reconnect, is that true for sub/pub model?
What's the use of CLEANUPINT in TCF? Is that for the JMS server to the cleanup time? If I shorten that time to a few second, will that resolve this network disruption problem?
Thanks |
|
Back to top |
|
 |
wenlanlu |
Posted: Tue Nov 23, 2004 2:12 pm Post subject: |
|
|
Newbie
Joined: 22 Nov 2004 Posts: 3
|
I got some answer from IBM MQSeries documentation for that, but it only talked about non-durable sub.
Here is what I found:
Incomplete publish/subscribe close down
There are some circumstances where this close procedure might not complete. These include:
Loss of a WebSphere MQ client connection
Unexpected application termination
In these circumstances, the close() is not called, and external resources remain open on the terminated application's behalf. The main consequences of this are:
Broker state inconsistency
The WebSphere MQ Message Broker might contain registration information for subscribers and publishers that no longer exist. This means that the broker might continue forwarding messages to subscribers that will never receive them.
Subscriber cleanup utility
Subscriber cleanup with SUBSTORE(BROKER)
With the broker-based subscription store, cleanup runs regularly on a background thread while there is an open TopicConnection to a particular physical queue manager. One instance of the cleanup thread is created for each physical queue manager to which a TopicConnection exists within the JVM.
After clearing the SYSTEM.JMS.REPORT.QUEUE, it attempts to remove any remaining unconsumed messages sent to non-durable subscribers.If the queue manager's command server is running on any queue beginning SYSTEM.JMS.ND.*, messages are cleared and the queue itself might be deleted. Otherwise, only SYSTEM.JMS.ND.SUBSCRIBER.QUEUE and SYSTEM.JMS.ND.CC.SUBSCRIBER.QUEUE are cleared of messages.
My question to this finding is: will the messages be deleted too? Is it only apply to non-durable sub? |
|
Back to top |
|
 |
bower5932 |
Posted: Fri Nov 26, 2004 5:06 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
If you lose the network connection, your active durable subscriber connection should be removed (unlocked) when WMQ realizes your subscriber has gone away. Based on various network timeouts, this could take a couple of minutes. None of the durable subscriber messages will be thrown away.
Non-durable subscribers behave in a similar manner except that the loss of their active connection will result in the subscriber being thrown away. You indicated that it was non-durable and WMQ thinks you left (and you did) without deregistering. Once this is realized, all of the messages for the subscriber are thrown away.
My guess is that you are coming back to quickly for WMQ to realize that you have left so that it can unlock the subscriber. |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|