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 » WebSphere Message Broker (ACE) Support » design for roll back.

Post new topic  Reply to topic Goto page 1, 2  Next
 design for roll back. « View previous topic :: View next topic » 
Author Message
sravan
PostPosted: Fri May 18, 2012 6:42 am    Post subject: design for roll back. Reply with quote

Centurion

Joined: 02 Apr 2010
Posts: 104
Location: Charlotte

We have an incoming XML request as REST based post request.


The request xml can have multiple groups in it.

each group can generate upto 8 mainframe mq request messages.

If there is any exception in any we have to roll back writing to the mq queue and send a notification.

Can you please suggest the possible design for it.
_________________
skr_wmb
Back to top
View user's profile Send private message
Vitor
PostPosted: Fri May 18, 2012 6:47 am    Post subject: Re: design for roll back. Reply with quote

Grand High Poobah

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

sravan wrote:
Can you please suggest the possible design for it.


Put the WMQ work under syncpoint & wire up exception handling to send a notification?

Which is so simplistic it can't possibly be the answer to any question you intended to ask. Perhaps if you rephrased it, adding subtitles for the hard of understanding?
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Fri May 18, 2012 6:52 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

I think he wants to ask: does the ESB automatically compensate the successful seven mainframe transactions if the eighth one fails? The answer is no, you must issue compensating transactions to backout the seven that worked.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
lancelotlinc
PostPosted: Fri May 18, 2012 6:55 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

I don't dare mention that compensation is covered in day two of the required training class. If I did, Esa would explode ! Vitor says: Training !
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Fri May 18, 2012 6:56 am    Post subject: Reply with quote

Grand High Poobah

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

It was the phrase "roll back writing to the queue" that confused me.

I stand by my assertion it's better not to send any messages in the group than attempt to compensate the sent messages in the group. But I accept both methods are workable & widely used.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
Vitor
PostPosted: Fri May 18, 2012 6:57 am    Post subject: Reply with quote

Grand High Poobah

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

lancelotlinc wrote:
I don't dare mention that compensation is covered in day two of the required training class.


Is it? That's an interesting addition.

Diffidently I point out that no-one seems to require the training except you. A huge number of employers consider it highly optional......
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
sravan
PostPosted: Fri May 18, 2012 7:01 am    Post subject: Reply with quote

Centurion

Joined: 02 Apr 2010
Posts: 104
Location: Charlotte

sorry for not phrasing the question correctly.

As lancelotlinc mentioned I have to roll back the seven sucessful messages if the eight messages failed for some reason within a group.
_________________
skr_wmb
Back to top
View user's profile Send private message
Vitor
PostPosted: Fri May 18, 2012 7:16 am    Post subject: Reply with quote

Grand High Poobah

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

sravan wrote:
As lancelotlinc mentioned I have to roll back the seven sucessful messages if the eight messages failed for some reason within a group.


Then you can either:

a) send all 8 as a unit of work as I've suggested
b) send compensating messages as my associate suggests

Both are valid, one or the other may be better for you depending on your individual requirements.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Fri May 18, 2012 7:33 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

Vitor wrote:
sravan wrote:
As lancelotlinc mentioned I have to roll back the seven sucessful messages if the eight messages failed for some reason within a group.


Then you can either:

a) send all 8 as a unit of work as I've suggested
b) send compensating messages as my associate suggests

Both are valid, one or the other may be better for you depending on your individual requirements.


a) send all 8 as a unit of work as I've suggested: means a single MQ message with 8 steps, mainframe completing all 8 at once or not at all.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Fri May 18, 2012 7:36 am    Post subject: Reply with quote

Grand High Poobah

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

lancelotlinc wrote:
a) send all 8 as a unit of work as I've suggested: means a single MQ message with 8 steps, mainframe completing all 8 at once or not at all.


I was thinking of 8 messages rather than a single message with 8 steps.

But yes, it means completing all 8 or not at all. The alternative is to complete all 8 then complete 7 compensations. Whichever is preferable depends on the individual requirements.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri May 18, 2012 7:39 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

I'm confused as to what kind of error needs to cause a roll-back.

Is it an error on processing the messages on the mainframe side? Because that's a completely ridiculous idea if it is. You won't be able to accomplish that, because you can't commit the messages to the mainframe before you get a response from the mainframe and the mainframe can't create a response until after you've committed the messages.

Is it an error in the format of the messages on the input side? If so, there's no reason to send the message on to the mainframe in the first place. Do all the necessary validation on all 8 pieces up front. If any fail, don't send any messages. If all succeed, send all 8 messages.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Fri May 18, 2012 7:40 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

Common errors I have seen are foreign key violations. Thats why I suggested one MQ message with 8 steps.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
mqjeff
PostPosted: Fri May 18, 2012 7:44 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

lancelotlinc wrote:
Common errors I have seen are foreign key violations. Thats why I suggested one MQ message with 8 steps.


That doesn't change the nature of the problem.

If it's an error that can only be detected on the mainframe side - like a foreign key violation - then the rollback of the request message CAN NOT be performed. Regardless of whether there's one or many request messages.

You can certain rollback the input message and retry it. But you can't roll back the messages that go to the mainframe from the fan out. Because they have to be committed before they can be processed to determine if there's an error with them.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Fri May 18, 2012 7:47 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

I agree. Thats why, if you fan out, you need compensating transactions to reverse the successful updates. ESB does not do this automatically.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
sravan
PostPosted: Fri May 18, 2012 8:06 am    Post subject: Reply with quote

Centurion

Joined: 02 Apr 2010
Posts: 104
Location: Charlotte

It is not errors on mainframe.

I have to send upto 8 messages from a single XML request into a mainframe request queue.

If one of the eight messages fails to get build sucessfully(may be due to mapping issue from xml to mainframe message) or some other issue in message broker,I should not send the messages to the request queue.


There is no response in this service from mainframe at all and also we do not account for any mainframe system errors once the messages are sucessfully sent to the request queue.
_________________
skr_wmb
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » design for roll back.
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.