ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » General IBM MQ Support » Backout Queue Doubt

Post new topic  Reply to topic
 Backout Queue Doubt « View previous topic :: View next topic » 
Author Message
vsathyan
PostPosted: Thu Mar 03, 2016 2:05 am    Post subject: Backout Queue Doubt Reply with quote

Centurion

Joined: 10 Mar 2014
Posts: 121

I've referred the below links.
https://www.ibm.com/support/knowledgecenter/SSFKSJ_7.5.0/com.ibm.mq.dev.doc/q032280_.htm
https://www.ibm.com/developerworks/community/blogs/messaging/entry/poison_messages_in_websphere_mq9?lang=en
http://stackoverflow.com/questions/910613/what-happens-if-a-message-is-rolled-back-in-mq

and a few more. I'm not able to understand and get answer for a question bugging my mind. This may be simple, but pls correct me wherever i'm wrong.

I've read that in JMS, XMS or any native API - the moving of message from the main queue to the backout queue should be done by the application / logic.

If MQ will not move the message from main queue to backout queue, what is the need to map the backout queue name in the main queue (BOQNAME) attribute and set the backout threshold (BOTHRESH).

If we give two separate queue names to the application as the read queue and backout queue, the application can take care of moving the messages in case it is backed out x number of times which the application can inquire the backout count from the message.

Just trying to understand why is that option available in MQ. We could do it without specifying the BOQNAME and BOTHRESH attributes in the main queue.

Please advise. Thank you.
_________________
Custom WebSphere MQ Tools Development C# & Java
WebSphere MQ Solution Architect Since 2011
WebSphere MQ Admin Since 2004
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu Mar 03, 2016 6:24 am    Post subject: Re: Backout Queue Doubt Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9472
Location: US: west coast, almost. Otherwise, enroute.

vsathyan wrote:
...

If MQ will not move the message from main queue to backout queue, [b]what is the need to map the backout queue name in the main queue (BOQNAME) attribute and set the backout threshold (BOTHRESH)?

From your readings, BOQNAME and BOQTHRESH are queue attributes and values. These attributes and values are not associated with a particular application program.

These attributes are indicators that are designed to be used in processing (moving) so-called "poison messages" - messages that could not be successfully processed by a consuming application.

You are correct that IBM MQ takes no action with these attributes and values - it is the responsibility of the consuming application to make use of them - if it appropriate to do so.

The purpose of any indicator is to represent that a specific condition exists. Think of the oil-pressure indicator in your car. An oil leak or insufficient oil will cause the indicator (usually a red light) to illuminate. The indicator does not add oil or stop the leak.
_________________
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.


Last edited by bruce2359 on Thu Mar 03, 2016 6:32 am; edited 3 times in total
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Mar 03, 2016 6:27 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

The advantage of setting them on the queue, rather than in a properties file is that the application can be moved to use any other queue , or the BOQ changed, including it's name, and the BOTHRESH updated dynamically.

You would otherwise have to use some kind of property setting on the application, and the application would have to read it every time it got a message.. The BOQNAME is available without extra code.
_________________
chmod -R ugo-wx /
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Mar 03, 2016 6:28 am    Post subject: Re: Backout Queue Doubt Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

vsathyan wrote:
Just trying to understand why is that option available in MQ. We could do it without specifying the BOQNAME and BOTHRESH attributes in the main queue.


You certainly could. Which means every application would need to develop a mechanism by which the backout queue name and the threshold is supplied to them. Or you could standardize by getting all applications to handle them the same way. This is clearly the better way, and IBM facilitates this by providing a standard location to store the attributes in.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
zpat
PostPosted: Thu Mar 03, 2016 6:58 am    Post subject: Reply with quote

Jedi Council

Joined: 19 May 2001
Posts: 5866
Location: UK

MQ just provides a place to store these values, nothing more.

WMB/IIB uses these values for example, when handling transactional rollback.

It has confused developers throughout the ages - I had one who thought that the backout queue would be used when the queue was full.

It would actually be quite useful if MQ could automatically perform the move of messages when the backout threshold was reached.
_________________
Well, I don't think there is any question about it. It can only be attributable to human error. This sort of thing has cropped up before, and it has always been due to human error.
Back to top
View user's profile Send private message
bruce2359
PostPosted: Thu Mar 03, 2016 7:22 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9472
Location: US: west coast, almost. Otherwise, enroute.

zpat wrote:
...

It would actually be quite useful if MQ could automatically perform the move of messages when the backout threshold was reached.

I would agree, except that MQ can't speculate about exactly what transactional elements need to be backed out - in addition to the single poison message.
_________________
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
View user's profile Send private message
vsathyan
PostPosted: Thu Mar 03, 2016 9:52 pm    Post subject: Reply with quote

Centurion

Joined: 10 Mar 2014
Posts: 121

zpat wrote:
It would actually be quite useful if MQ could automatically perform the move of messages when the backout threshold was reached.




Thanks team for your inputs.

Regards,
vsathyan
_________________
Custom WebSphere MQ Tools Development C# & Java
WebSphere MQ Solution Architect Since 2011
WebSphere MQ Admin Since 2004
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » General IBM MQ Support » Backout Queue Doubt
Jump to:  



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
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.