IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

MQ ROLLBACK?


IBM Mainframe Forums -> Java & MQSeries
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
anshuljain26

New User


Joined: 04 Apr 2010
Posts: 37
Location: Chandigarh

PostPosted: Tue Aug 02, 2011 12:31 am
Reply with quote

Hi,

To fix an issue in our application, we require an MQ rollback. Following is the scenario:

1)Program A puts message on MQ ABC.
2)MQ ABC, has trigger Y, so it invokes a transaction XX which further invokes a program B.
3)Program B is invoked in MQ region which further invokes a program C in ZZ region i.e. in AOR
4)Now, for a condition i want to rollback the changes and put the same message on MQ, that program C recieved via B, and B through MQ so that when Rollback is issued message on MQ ABC is there.

Way I am trying:
I am issuing EXEC CICS ROLLBACK END-EXEC.

This definitely rollback the DB2 changes and CICS changes, but the message from MQ ABC was consumed.

What i dont want to try:

Definitely, we can write the same message back on MQ from prog C, but that's the last option we have kept with us, coz that will require lot of access and permissions.


Could you please help me.

I am sorry for such a long message but thought of describing the situation completely. Please let me know in case any further information is required.

Thanks.

Anshul
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Tue Aug 02, 2011 12:53 am
Reply with quote

suggest you look into RRSAF. if your are doing MQS and DB2 within the same transaction,
some analyst at your place did a great job of not doing his/her job.
Back to top
View user's profile Send private message
anshuljain26

New User


Joined: 04 Apr 2010
Posts: 37
Location: Chandigarh

PostPosted: Tue Aug 02, 2011 1:16 am
Reply with quote

Thanks, Dick.

i will look into RRSAF, between what are the design issues for MQS & DB2 within same transaction.

Could you please help me understand?

Thanks.
Back to top
View user's profile Send private message
anshuljain26

New User


Joined: 04 Apr 2010
Posts: 37
Location: Chandigarh

PostPosted: Tue Aug 02, 2011 2:05 am
Reply with quote

I was not able to find much information on RRSAF. Could you please help?
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Tue Aug 02, 2011 1:22 pm
Reply with quote

Read chapter 3 in ABCs of z/OS System Programming: Volume 5
that will provide you with the basics.

This is not something that you can implement without the support of your Sys-programmers, CICS, MQS, (Websphere) and DB2 support people.

Since RRSAF is a paid-for option, your site may have decided to not purchase RRSAF.
which means you are back at the begining dealing with multiple resource backout.

Since DB2 commit/rollback is normally controlled via CICS,
don't understand why your site does not have MQS already tied it.

It may be that instead of a CICS ROLLBACK, you need to do a DB2 RRS Rollback or make use of the MQS RRS Rollback.
the above I leave to you to find in the MQS/Websphere documentation.
Back to top
View user's profile Send private message
Garry Carroll

Senior Member


Joined: 08 May 2006
Posts: 1193
Location: Dublin, Ireland

PostPosted: Tue Aug 02, 2011 2:17 pm
Reply with quote

What are your setting for MQGMO-OPTIONS ? To be able to rollback the MQ message you need to specify MQGMO-SYNCPOINT, otherwise the MQGET will consume the message immediately. Rollback will reinstate the message in the same position on the queue, so be sure to check the BackoutCount to prevent interminable loop.

Garry.
Back to top
View user's profile Send private message
Marso

REXX Moderator


Joined: 13 Mar 2006
Posts: 1353
Location: Israel

PostPosted: Tue Aug 02, 2011 3:17 pm
Reply with quote

anshuljain26 wrote:
Way I am trying:
I am issuing EXEC CICS ROLLBACK END-EXEC.

Funny, I cannot find this command in the documentation icon_question.gif
I always use EXEC CICS SYNCPOINT ROLLBACK END-EXEC and it backs out all recoverable resources, DB2 and MQ...
Maybe the MQ queue is not part of the recoverable resources
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> Java & MQSeries

 


Similar Topics
Topic Forum Replies
No new posts filter COMMIT/ROLLBACK statements DFSORT/ICETOOL 13
No new posts TWA variable having junk value after ... CICS 1
No new posts Handle ROLLBACK in EXCI interface CICS 12
No new posts Rollback does not remove messages? Java & MQSeries 5
No new posts Error in CICS SYNCPOINT ROLLBACK CICS 4
Search our Forums:

Back to Top