|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
JMS issue |
« View previous topic :: View next topic » |
Author |
Message
|
Al Pacino |
Posted: Fri Mar 16, 2007 7:40 am Post subject: JMS issue |
|
|
 Centurion
Joined: 19 Aug 2005 Posts: 114
|
I have a question here , I modified JMS-using-MQ processing to match the unit-of-work for the database and jms calls. Previously, each jms message was committed one-by-one, but the database changes were all committed together at the end of the transaction. If the transaction timed out, then the messages still had already been sent , but the database changes were rolled back. I changed the JMS part to keep the queue connection open and to commit the changes all together at the end of the transaction.
Works fine as long as you don’t try to send more than 255 messages in one transaction. After that it fails with a queue open error on message 256.
Could be a JMS problem, or it could be something in MQ itself.
All we get is the following JMS exception when it tries to create the message sender for message 256:
09:32:12.0276|ExecuteThread: '14' for queue: 'weblogic.kernel.Default'|JmsDAO|getKeepConnectionLive()|DEBUG|keeplive=true
09:32:12.0338|ExecuteThread: '14' for queue: 'weblogic.kernel.Default'|JmsDAO|sendTransactedMessage|SYSTEM|javax.jms.ResourceAllocationException: MQJMS2008: failed to open MQ queue MQSI.BRMAINT
at com.ibm.mq.jms.MQQueueServices.getQueueOpenException(MQQueueServices.java:415)
1) Do you know (if there is) a way to crank up logging for MQ itself so I can get a more detailed explanation of the underlying error?
2) 255 must be an implicit queue limit of some kind. Are you aware of any implicit limits on uncommitted messages? _________________ "We can't solve problems by using the same kind of thinking we used
when we created them." |
|
Back to top |
|
 |
HubertKleinmanns |
Posted: Fri Mar 16, 2007 7:52 am Post subject: |
|
|
 Shaman
Joined: 24 Feb 2004 Posts: 732 Location: Germany
|
Al Pacino,
I do not know, if there is a JMS limit, but in MQ there is a QMgr attribute, called MAXUMSG. This attributeis normally set to 10000, but may be changed. Look at the QMgr configuration.
Additionally I would expect, that 0ne JMS transactions leads to several MQ operations, and so the values may differ.
When MQ does a rollback, you should get the reason code 2024 (MQRC_SYNCPOINT_LIMIT_REACHED) in your application log. _________________ Regards
Hubert |
|
Back to top |
|
 |
EddieA |
Posted: Fri Mar 16, 2007 10:57 am Post subject: |
|
|
 Jedi
Joined: 28 Jun 2001 Posts: 2453 Location: Los Angeles
|
It also could be that you've run out of log space to hold the uncomitted messages.
In your exception handler, check for a linked exception, and if there is one, grab the MQ return/reason codes from it. That will tell you exactly what the issue is.
Cheers. _________________ Eddie Atherton
IBM Certified Solution Developer - WebSphere Message Broker V6.1
IBM Certified Solution Developer - WebSphere Message Broker V7.0 |
|
Back to top |
|
 |
Al Pacino |
Posted: Fri Mar 16, 2007 11:43 am Post subject: |
|
|
 Centurion
Joined: 19 Aug 2005 Posts: 114
|
Thanks guys , it was the MaxHandle on the QM level. _________________ "We can't solve problems by using the same kind of thinking we used
when we created them." |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Mar 16, 2007 8:50 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Al Pacino wrote: |
All we get is the following JMS exception when it tries to create the message sender for message 256
Thanks guys , it was the MaxHandle on the QM level. |
Sorry but you treated the symptom and not the cause. All I have to say here is design flaw. You need to use an anonymous sender/producer (hint it gets defined without destination) and then pass the destination in on the send call.
This way your resource usage is minimal.
Also keep the session open during the whole transaction. Don't do a session close at each message. It's all about maximizing the usage of your resources...
Enjoy  _________________ MQ & Broker admin |
|
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
|
|
|
|