|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
How to remove uncommitted messages from Local Q |
« View previous topic :: View next topic » |
Author |
Message
|
pandeg |
Posted: Fri Jul 24, 2015 11:45 am Post subject: How to remove uncommitted messages from Local Q |
|
|
Disciple
Joined: 21 Oct 2014 Posts: 195
|
Hi , I want to remove uncommitted message from local Q. For this I tried all the possible steps, but its not working out.
1. Stop the SVR connection
2. stop the putting and getting application (websphere Application server)
3. Kill the process for channel
4. Tried to clear the queue
5. Tried to delete the Queue.
6. Tried to amqsget the message
7. Tried to put and get (disabled) and clear the queue
8. Tried to stop conn and extconn both
I didn't restart the Queue Manager as it will impact other applications as well. please suggest what other options i can try. |
|
Back to top |
|
 |
exerk |
Posted: Fri Jul 24, 2015 2:36 pm Post subject: |
|
|
 Jedi Council
Joined: 02 Nov 2006 Posts: 6339
|
An uncommitted PUT message is never available to a getting application. The moment you do anything that stops the message being committed by the putting application, it gets rolled back, which means (as far as the queue manager is concerned) that the message never existed - you can't get something that doesn't exist! _________________ It's puzzling, I don't think I've ever seen anything quite like this before...and it's hard to soar like an eagle when you're surrounded by turkeys. |
|
Back to top |
|
 |
vsathyan |
Posted: Fri Jul 24, 2015 7:22 pm Post subject: |
|
|
Centurion
Joined: 10 Mar 2014 Posts: 121
|
It may also be the case where the message is already put and committed by the put application, but a get operation is in process and it is not commited.
Identify the handles on the queue - DIS QSTATUS(QNAME) TYPE(HANDLE) ALL.
See what are the applications connected. Identify where the uncommitted messages are (while reading or writing).
If it is while writing, as Exerk mentioned, you cannot get a message from the queue which never existed.
If you see the operation as get, try to kill the process associated with the queue. If the application is properly coded, the uncommitted messages should go back to the queue and you will not see any uncommitted messages in the queue.
If this is on a transmit queue, check the channel and make sure it runs and the messages reach the destination queue manager.
Thanks,
vsathyan _________________ Custom WebSphere MQ Tools Development C# & Java
WebSphere MQ Solution Architect Since 2011
WebSphere MQ Admin Since 2004 |
|
Back to top |
|
 |
JosephGramig |
Posted: Mon Jul 27, 2015 5:46 am Post subject: |
|
|
 Grand Master
Joined: 09 Feb 2006 Posts: 1244 Location: Gold Coast of Florida, USA
|
My notes on this topic:
Code: |
* How to resolve uncommitted transactions on a Qmgr
mqm @ cgprd6>$dspmqtrn -m cguatqm
AMQ7056: Transaction number 0,1 is in-doubt.
XID: formatID 1096044365, gtrid_length 43, bqual_length 35
gtrid [746D4C6F6164517565756546726F6D46696C65323031343031323331393135303130303032363030303031]
bqual [746D4C6F6164517565756546726F6D46696C6532303134303132333139313530313433]
mqm @ cgprd6>$rsvmqtrn -m cguatqm -b 0,1
The transaction has been backed out.
|
 |
|
Back to top |
|
 |
bruce2359 |
Posted: Mon Jul 27, 2015 6:03 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
JosephGramig wrote: |
My notes on this topic:
Code: |
* How to resolve uncommitted transactions on a Qmgr
mqm @ cgprd6>$dspmqtrn -m cguatqm
AMQ7056: Transaction number 0,1 is in-doubt.
XID: formatID 1096044365, gtrid_length 43, bqual_length 35
gtrid [746D4C6F6164517565756546726F6D46696C65323031343031323331393135303130303032363030303031]
bqual [746D4C6F6164517565756546726F6D46696C6532303134303132333139313530313433]
mqm @ cgprd6>$rsvmqtrn -m cguatqm -b 0,1
The transaction has been backed out.
|
 |
From http://www-01.ibm.com/support/knowledgecenter/SSFKSJ_7.5.0/com.ibm.mq.ref.adm.doc/q083390_.htm
Quote: |
-b
Backs out the named transaction. This flag is valid for externally coordinated transactions (that is, for external units of work) only. |
_________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
gbaddeley |
Posted: Mon Jul 27, 2015 4:04 pm Post subject: Re: How to remove uncommitted messages from Local Q |
|
|
 Jedi Knight
Joined: 25 Mar 2003 Posts: 2538 Location: Melbourne, Australia
|
pandeg wrote: |
Hi , I want to remove uncommitted message from local Q. For this I tried all the possible steps, but its not working out... |
Uncommitted messages are only visible to the app that is holding them in its current Unit Of Work. No other app can do anything with them, such as get browse or get destructive, until the UOW is finished.
If the app does a Commit, and it is putting msgs as part ofn the UOW, the msgs will then become visible to other apps. If it is destructively getting msgs, they will be removed from the queue.
If the app does a Backout, and it is putting msgs in the UOW, they will not appear on the queue. They disappear in a puff of smoke. If it is destructively getting messages, the msgs will remain on the queue and will be visible to others. The backout count will be incremented. Depending on the app behaviour, the msgs may be moved to a Back Out Queue. _________________ Glenn |
|
Back to top |
|
 |
fjb_saper |
Posted: Tue Jul 28, 2015 4:30 am Post subject: Re: How to remove uncommitted messages from Local Q |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
gbaddeley wrote: |
pandeg wrote: |
Hi , I want to remove uncommitted message from local Q. For this I tried all the possible steps, but its not working out... |
Uncommitted messages are only visible to the app that is holding them in its current Unit Of Work. No other app can do anything with them, such as get browse or get destructive, until the UOW is finished.
If the app does a Commit, and it is putting msgs as part ofn the UOW, the msgs will then become visible to other apps. If it is destructively getting msgs, they will be removed from the queue.
If the app does a Backout, and it is putting msgs in the UOW, they will not appear on the queue. They disappear in a puff of smoke. If it is destructively getting messages, the msgs will remain on the queue and will be visible to others. The backout count will be incremented. Depending on the app behaviour, the msgs may be moved to a Back Out Queue. |
And if the App disconnects without ever being able to reinstate the unit of work, without either committing or rolling back, you may be saddled with the uncommitted messages until qmgr restart... If you are lucky rsvmqtrn may commit or rollback the transaction for you.  _________________ 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
|
|
|
|