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
 

 

how to find a record that caused the program to abend

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> ABENDS & Debugging
View previous topic :: :: View next topic  
Author Message
Dinesh Manivannan

New User


Joined: 17 Mar 2008
Posts: 16
Location: India

PostPosted: Mon Oct 21, 2013 10:46 pm    Post subject: how to find a record that caused the program to abend
Reply with quote

Dear forum,

Suppose we are processing 10 million records in file. One of the record made the program to abend. I don't have any tool like fault analyzer or abend aid. How can I find the record that caused the abend ?

Do we have any options in JCL achieve this?

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

don.leahy

Active Member


Joined: 06 Jul 2010
Posts: 641
Location: Whitby, ON, Canada

PostPosted: Mon Oct 21, 2013 11:03 pm    Post subject:
Reply with quote

The only way to be sure is to read the dump.

Are you 100% sure that there is no dump formatting tool available? You may not have Abend Aid or Fault Analyzer, but there are others.

Did the program DISPLAY anything before it died?
Back to top
View user's profile Send private message
dick scherrer

Site Director


Joined: 23 Nov 2006
Posts: 19270
Location: Inside the Matrix

PostPosted: Mon Oct 21, 2013 11:41 pm    Post subject:
Reply with quote

Hello,

Unless your problem is caused by some iterative process that "walks on storage", the info you need will be in the dump.

What is the abend? Depending on what has happened, there may be different things to consider.

Suggest you post the lines from the JES output that mention the error.
Back to top
View user's profile Send private message
madprasy

New User


Joined: 08 Apr 2008
Posts: 31
Location: Chennai

PostPosted: Tue Oct 22, 2013 10:40 am    Post subject:
Reply with quote

If your job is creating any output file reading your input file sequentially, then you can keep the disp mode for o/p file as (NEW,CATLG,CATLG).
So, the output file will be written till the erroneous input record.

If you are specific about the abend code, then forum search will help you a lot.
Back to top
View user's profile Send private message
Pandora-Box

Moderator


Joined: 07 Sep 2006
Posts: 1529
Location: Andromeda Galaxy

PostPosted: Tue Oct 22, 2013 2:27 pm    Post subject:
Reply with quote

CEEDUMP could come handly to identify the abended record
Back to top
View user's profile Send private message
gcicchet

Senior Member


Joined: 28 Jul 2006
Posts: 1703
Location: Australia

PostPosted: Wed Oct 23, 2013 3:09 am    Post subject:
Reply with quote

Hi,

Quote:
If your job is creating any output file reading your input file sequentially, then you can keep the disp mode for o/p file as (NEW,CATLG,CATLG).
So, the output file will be written till the erroneous input record.



A write usually takes place only after a block has been completed,
so there's no guarantee that the erroneous record follows the last block written.


Gerry
Back to top
View user's profile Send private message
Terry Heinze

JCL Moderator


Joined: 14 Jul 2008
Posts: 1238
Location: Richfield, MN, USA

PostPosted: Wed Oct 23, 2013 7:04 pm    Post subject:
Reply with quote

gcicchet wrote:
Hi,

Quote:
If your job is creating any output file reading your input file sequentially, then you can keep the disp mode for o/p file as (NEW,CATLG,CATLG).
So, the output file will be written till the erroneous input record.



A write usually takes place only after a block has been completed,
so there's no guarantee that the erroneous record follows the last block written.


Gerry


True, but wouldn't unblocking the output file temporarily solve that problem?
Back to top
View user's profile Send private message
Dinesh Manivannan

New User


Joined: 17 Mar 2008
Posts: 16
Location: India

PostPosted: Wed Oct 23, 2013 9:51 pm    Post subject: Reply to: how to find a record that caused the program to ab
Reply with quote

Thanks for the reply geeks. So dump can give us the idea of the record that caused the program to abend.

Sorry for late reply
Back to top
View user's profile Send private message
dick scherrer

Site Director


Joined: 23 Nov 2006
Posts: 19270
Location: Inside the Matrix

PostPosted: Wed Oct 23, 2013 9:55 pm    Post subject:
Reply with quote

Hello,

Quote:
So dump can give us the idea of the record that caused the program to abend.
Often, but Not necessarily . . .

The program may have been "degrading" due to some problem earlier in the data and by the time the program abended, all that is left is the victims, not the culprit.

You may need to add some diagnostic code to help identify where the problem(s) begin.

You still have not posted which abend is happening icon_neutral.gif
Back to top
View user's profile Send private message
Akatsukami

Global Moderator


Joined: 03 Oct 2009
Posts: 1738
Location: Bloomington, IL

PostPosted: Wed Oct 23, 2013 9:58 pm    Post subject:
Reply with quote

Not "give an idea", but "pinpoint the record" (assuming, of course, that it was data in that record that caused the program to abend -- something that is not necessarily the case).

As you were too timid to proffer such information as the abend code and the language in which the program is written, we can of course speak only in generalities.
Back to top
View user's profile Send private message
Bill Woodger

DFSORT Moderator


Joined: 09 Mar 2011
Posts: 7225

PostPosted: Wed Oct 23, 2013 10:18 pm    Post subject: Reply to: how to find a record that caused the program to ab
Reply with quote

A full dump shows you the entire state of everything when your program abended.

It is like an autopsy, but without any post-abend decomposition.

Without further details from you, we can assure you that all data areas relating to records are presented in their state at the time of the failure.

Without knowing more, as Akatsukami states, we can't get much beyond that.

How about a small clue, like programming language at least?
Back to top
View user's profile Send private message
dick scherrer

Site Director


Joined: 23 Nov 2006
Posts: 19270
Location: Inside the Matrix

PostPosted: Wed Oct 23, 2013 11:16 pm    Post subject:
Reply with quote

Quote:
How about a small clue, like programming language at least?

And the abend code . . .
Back to top
View user's profile Send private message
Kmr.deepakcs

New User


Joined: 11 Oct 2013
Posts: 37
Location: India

PostPosted: Tue Oct 29, 2013 3:16 pm    Post subject:
Reply with quote

If u got abend then there will be a dump and u can get offset from there and check the statement which is causing problem.

In ceedump u can check offset....




Deepak kumar
Back to top
View user's profile Send private message
dick scherrer

Site Director


Joined: 23 Nov 2006
Posts: 19270
Location: Inside the Matrix

PostPosted: Tue Oct 29, 2013 8:52 pm    Post subject:
Reply with quote

Hello,

@Dinesh Manivannan - has this been resolved?


@Kmr.deepakcs - Please re-read the entire topic and understand that this was not new information.
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 -> ABENDS & Debugging All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts How to find the first monday of the w... abdulrafi COBOL Programming 10 Fri Nov 25, 2016 3:24 pm
No new posts IMS BMP program causes 878 system abend Artemk IMS DB/DC 7 Tue Nov 22, 2016 8:26 pm
No new posts How to update a portion of text in a ... Bill Woodger DFSORT/ICETOOL 25 Wed Nov 09, 2016 9:41 pm
No new posts abend sort based on count records in ... anatol DFSORT/ICETOOL 5 Mon Oct 17, 2016 10:10 pm
No new posts Find out a active PGM jpsager JCL & VSAM 10 Fri Oct 07, 2016 4:32 pm


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