Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

MQPUT - Failure

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> IMS DB/DC
View previous topic :: :: View next topic  
Author Message
rakesh1155

New User


Joined: 21 Jan 2009
Posts: 84
Location: India

PostPosted: Fri Mar 11, 2011 12:02 pm    Post subject: MQPUT - Failure
Reply with quote

Hi,

I have a program which does and MQGET (with MQPMO_SYNCPOINT) from an MQ (say MQ-1).

Based on the paramters in the data in MQ-1, it reads records from DB2 table and puts the data read from table in another MQ (say MQ-2) and updates the status in the table.

Note: There could be 5000 records in DB2 for each paramater from MQ-1.

Now, after 1000 MQPUT (with MQPMO-SYNCPOINT option) on MQ-2, the program abends with MQ error 2024 (MQRC_SYNCPOINT_LIMIT_REACHED )

Is there a way to commit the changes both in MQ-2 and DB2 table, however, NOT losing the message in the MQ-1 ?

I hope I didn't sound vague and If I did, please let me know.

-Thanks,
Rakesh.
Back to top
View user's profile Send private message

Susan Talbot

New User


Joined: 17 Dec 2010
Posts: 36
Location: KY

PostPosted: Thu Aug 11, 2011 11:32 pm    Post subject:
Reply with quote

you can do an explicit commit in both MQ and DB2. Why would you lose the meesage from MQ-1? Are you putting it in a working storage field when you et it off?
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


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

PostPosted: Fri Aug 12, 2011 1:46 am    Post subject:
Reply with quote

you still have a problem because you complete unit-of-work
includes every db2 row effected by the msg on mq-1.

any commit you make will destroy the msg on mq1. and since you can only partially work the mq1 msg before committing the mq2 msg,
you need to save the mq1 msg (in a db2 table) as a restart parm when you commit.

that way you process the saved db2 row (with the msg) before you ever read mq1.

the last commit for a completely worked mq1 msg would be to update the db2 restart row as empty, forcing your processing logic to read mq1.
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


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

PostPosted: Fri Aug 12, 2011 2:07 am    Post subject:
Reply with quote

This topic, by the way, is the best in several weeks.

someone actually created something,
has a problem (beyond not being able to read the manual),
and explained it well enough to provoke thought.

if we had 15 or 20 questions a day of this caliber,
this would be an interesting forum.

most of the time it is just depressing.

Thx rakesh1155,
you made my summer....
Back to top
View user's profile Send private message
rakesh1155

New User


Joined: 21 Jan 2009
Posts: 84
Location: India

PostPosted: Thu Aug 25, 2011 11:37 am    Post subject:
Reply with quote

Thanks dbzTHEdinosauer!

I have seen numerous posts in this forum with improper explanation and get the answers of the same quality.
And this is what makes me try to explain my question at the fullest I can.

Coming back to the query,
I had suggested the same answer to the senior folks about saving the MQ1 msg on a db2 table.

But as it happens at most times, seniors often like to choose the difficult/complex way and solution implemented was:

the message read from MQ1 is written back to the MQ1 on reaching the syncpoint limit which then re-triggers the same transaction/program and this goes on.

For eg: For 5000 records,
after 1000 MQPUTs, the message read from MQ1 is written back to MQ1. and transaction ends.
Now there are 4000 records waiting to be processed, The message is read again and the process continues until it finishes all records.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> IMS DB/DC All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts ALLOCATE REXX PDS to SYSPROC failure mambopras CLIST & REXX 4 Sat Apr 04, 2015 10:14 am
No new posts OPC/Tivoli OCL failure (line 1560) David Robinson IBM Tools 14 Mon Dec 01, 2014 7:13 am
No new posts FTINCL failure code 20 Invalid contro... Steve Coalbran TSO/ISPF 2 Mon Aug 04, 2014 10:44 am
No new posts Triggering txn via MQPUT but no incre... MadanVS CICS 1 Wed Aug 07, 2013 7:31 pm
No new posts Alter Table - Failure gylbharat DB2 7 Wed Jul 03, 2013 5:10 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us