View previous topic :: View next topic |
Author |
Message |
asish2006 Banned
Joined: 29 Jun 2010 Posts: 6 Topics: 2
|
Posted: Tue Jun 29, 2010 12:52 pm Post subject: I am losing data due to restart of IMS job. |
|
|
Hi, I have IMS -COBOL BMP program which is extracting records from IMS database & write it to an output file. 1st I ran it & it extracted 480694 records. Then I did abend the job forcefully & then restarted. Job restarted from last Checkpoint. But in that case it extracted 480397 records. Means I lost 297 records due to restart. I used GSAM files as Input & output & the program has the checkpoint & restart logic. Please help me to resolve this issue. |
|
Back to top |
|
|
kolusu Site Admin
Joined: 26 Nov 2002 Posts: 12359 Topics: 75 Location: San Jose
|
Posted: Tue Jun 29, 2010 1:00 pm Post subject: |
|
|
asish2006,
Compare the 2 output files and find out which records are missing. Then check if they are missing due to the checkpoint restart logic. or if someone changed the database in between.
Add displays to your pgm when taking a checkpoint displaying the key and upon restart add display to see if the key is the same
Kolusu |
|
Back to top |
|
|
asish2006 Banned
Joined: 29 Jun 2010 Posts: 6 Topics: 2
|
Posted: Tue Jun 29, 2010 1:25 pm Post subject: |
|
|
I compared the files & found that the records which I have lost having the same key. the program was processing for that paricular key when it was abenden.in between databse was not altered.It is test databse. |
|
Back to top |
|
|
dbzTHEdinosauer Supermod
Joined: 20 Oct 2006 Posts: 1411 Topics: 26 Location: germany
|
Posted: Tue Jun 29, 2010 1:28 pm Post subject: |
|
|
have you resolved the problem? a more accurate restart key??? _________________ Dick Brenholtz
American living in Varel, Germany |
|
Back to top |
|
|
kolusu Site Admin
Joined: 26 Nov 2002 Posts: 12359 Topics: 75 Location: San Jose
|
Posted: Tue Jun 29, 2010 2:15 pm Post subject: |
|
|
asish2006 wrote: | I compared the files & found that the records which I have lost having the same key. the program was processing for that paricular key when it was abenden.in between databse was not altered.It is test databse. |
You need to check your RESTART Logic.
Kolusu |
|
Back to top |
|
|
papadi Supermod
Joined: 20 Oct 2009 Posts: 594 Topics: 1
|
Posted: Tue Jun 29, 2010 2:42 pm Post subject: |
|
|
You should re-process the entire sequential output from the beginning. It is not handled the same as database entries that have been controlled thru checkpoint.
If the process produces a report or some other type of summary data, these too must be re-processed from the beginning - they will not be available over an abend/restart. _________________ All the best,
di |
|
Back to top |
|
|
kolusu Site Admin
Joined: 26 Nov 2002 Posts: 12359 Topics: 75 Location: San Jose
|
Posted: Tue Jun 29, 2010 2:50 pm Post subject: |
|
|
papadi wrote: | You should re-process the entire sequential output from the beginning. It is not handled the same as database entries that have been controlled thru checkpoint.
If the process produces a report or some other type of summary data, these too must be re-processed from the beginning - they will not be available over an abend/restart. |
Papadi,
GSAM output files need NOT be processed from the beginning. After check point restart the new records will be appended to the existing records. Where are you getting that info about processing them from beginning?
Kolusu |
|
Back to top |
|
|
dbzTHEdinosauer Supermod
Joined: 20 Oct 2006 Posts: 1411 Topics: 26 Location: germany
|
Posted: Tue Jun 29, 2010 2:59 pm Post subject: |
|
|
The fact that machines are bigger and faster
and mainframe programmers don't seem to have the skills to properly sync a restart
means that many shops are starting all over from the beginning after an abend
This is especially true if the input trigger mechanism is PS
because it involves keeping a counter,
determining if we are in restart mode or not,
etc...
just too hard to provide testing to insure that the code works.
BUT
if the program can keep track of where to restart
(obviously the TS has a problem positioning himself)
sequential output thru use of DISP=MOD has worked well for the last 30 years.
If summary totals are to be maintained,
a simple RESTART ROW in a db2 table or vsam record,
can be used. _________________ Dick Brenholtz
American living in Varel, Germany |
|
Back to top |
|
|
papadi Supermod
Joined: 20 Oct 2009 Posts: 594 Topics: 1
|
Posted: Tue Jun 29, 2010 4:13 pm Post subject: |
|
|
Quote: |
Where are you getting that info about processing them from beginning?
| Because qsam files have no way to "remember" what has gone on. In the case of appending data, yup, MOD can be used, but if the data being MODded contains totals, this breaks down.
For quite a few years, none of my clients have turned over a process that includes restart after an abend. As DBZ mentions, with the bigger/faster cpus/dasd, rerunning from the beginning is usually faster and less error prone than dealing with the specifics of a restart - especially at 2:30 in the morning<g>. _________________ All the best,
di
Last edited by papadi on Wed Jun 30, 2010 1:33 pm; edited 1 time in total |
|
Back to top |
|
|
kolusu Site Admin
Joined: 26 Nov 2002 Posts: 12359 Topics: 75 Location: San Jose
|
|
Back to top |
|
|
papadi Supermod
Joined: 20 Oct 2009 Posts: 594 Topics: 1
|
Posted: Tue Jun 29, 2010 4:38 pm Post subject: |
|
|
Thanks
di |
|
Back to top |
|
|
Anuj Dhawan Intermediate
Joined: 19 Jul 2007 Posts: 298 Topics: 7 Location: Mumbai,India
|
Posted: Wed Jun 30, 2010 8:26 am Post subject: |
|
|
I agree with Skolusu, I'm bound to use GSAM all the time. You can consider GSAM as a single "occurence" of an IMS segment. _________________ Regards,
Anuj |
|
Back to top |
|
|
|
|