|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
How to troubleshoot messages stuck in transmission queue? |
« View previous topic :: View next topic » |
Author |
Message
|
fjb_saper |
Posted: Sun Jan 11, 2015 7:55 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20757 Location: LI,NY
|
rconn2 wrote: |
Thanks. That's exactly how I described them -- orphans and ghost messages . And, they did go away on a qmgr restart.
Is there any way other than a bounce to get rid of them? How about a time to live setting... say set for 100 hours or somesuch? It'd be good to have a way to rollback messages not committed within a designated time. |
Not necessarily relevant. You may want to have messages that don't expire and are persistent. If you never get to prepare commit them or commit them and the connection to the TM gets broken you still have "ghost" messages...
The only way to resolve them is to allow for the TM to kind of recover pending transactions at start up....
Have fun  _________________ MQ & Broker admin |
|
Back to top |
|
 |
Andyh |
Posted: Mon Jan 12, 2015 2:44 am Post subject: |
|
|
Master
Joined: 29 Jul 2010 Posts: 239
|
There's a relatively well known window in the XA transaction specification, where a failure between xa_end() and xa_prepare() can leave a transaction in limbo, in an unprepared state.
XA doesn't require the same hConn to be used to prepare/commit the transaction as was used to update the MQ resources under that transaction.
After xa_end the transaction is no associated with an hConn, and hence if the hConn is terminated abruptly the transaction will not be rolled back.
By default, MQ would only rollback such a transaction if it needed to do so in order to keep the size of the active log within bounds. If the transaction only involved non-persistent messages then this transaction would only ever be backed out by a queue manager restart.
There are a couple of environment variables that can be set to change MQ's default behaviour, such that transactions the remain in this state for longer than a predefined period will be rolled back. This behaviour is described here:
http://www-01.ibm.com/support/knowledgecenter/SSFKSJ_7.5.0/com.ibm.mq.dev.doc/q114450_.htm
Note also that more recent versions of MQ support a "-a" option on dspmqtrn which allows all transactions, rather than just indoubt transactions, to be displayed and would thus allow a more definite diagnosis of the issue. |
|
Back to top |
|
 |
|
|
|
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
|
|
|
|