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

How to find which record caused the S0C7 Abend


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
MGayathri

New User


Joined: 19 May 2007
Posts: 25
Location: Chennai

PostPosted: Thu Jul 24, 2008 4:46 pm
Reply with quote

Hi,
In a one million input file, Using the List option i would know which COBOL statement caused the S0C7 .. Can you help me how to read the Address space,so that which record has caused the Abend and wat was the actual data for the cause.
Thanks,
Gay3
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 8696
Location: Dubuque, Iowa, USA

PostPosted: Thu Jul 24, 2008 5:06 pm
Reply with quote

What does address space have to do with this? Hopefully, if you got an S0C7 abend you got a dump. Read the dump to fix the problem. The data that caused the problem will be in the dump, and usually the file buffer area that shows the specific record as well.
Back to top
View user's profile Send private message
MGayathri

New User


Joined: 19 May 2007
Posts: 25
Location: Chennai

PostPosted: Thu Jul 24, 2008 5:16 pm
Reply with quote

Hi,
I need to know how to read the Hex format of the DUMP which caused the error.HOw to locate the corect record with the offset address
Back to top
View user's profile Send private message
Garry Carroll

Senior Member


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

PostPosted: Thu Jul 24, 2008 5:34 pm
Reply with quote

The PSW in the dump is most likely pointing to the instruction after the one that caused the S0C7. Six bytes before this is the decimal instruction. The 1st byte is the instruction, the 2nd byte the operand lengths (a nibble each), the 3rd & 4th bytes refer to operand 1 and the 5th and 6th byte to operand 2. The operand bytes are of format Rooo (register, offset). using the "registers at entry.." in the dump calculate the operand addresses and then, using the length fields, check which is not a valid decimal field.

Regards,
Garry.
Back to top
View user's profile Send private message
UmeySan

Active Member


Joined: 22 Aug 2006
Posts: 771
Location: Germany

PostPosted: Thu Jul 24, 2008 5:35 pm
Reply with quote

Hi MGayathri !

First check if any abend-aid software is unstalled in your shop.
so you get more informations as on a normal dump. let your mates teach you on how to interpret these.

Normaly you get EntryPointLocation of your Programm and the Adress, where abend occurs. So you can calculate:
AbendAdress - EntryPoint = Command in Listing
So one line before that, there's th command where the shit happens.

To locate the field and it's content in the dump:

Look at your ProgrammListing. get the adress of the Field there.
Add this to the EntryPointAdress of the dump. You get a new adress.
Look up this adress in the dump, There's your field.


And last but not least:

Check if XPEDITER is installed. If you don't know how to operate that tool, ask your mates to help you. Trace your programm with that tool.
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 8696
Location: Dubuque, Iowa, USA

PostPosted: Thu Jul 24, 2008 5:48 pm
Reply with quote

Quote:
I need to know how to read the Hex format of the DUMP which caused the error.HOw to locate the corect record with the offset address
It's pretty much impossible for you to learn how to read a dump from forum posts; you need help from your systems programmers or coworkers with the specific dump. For example, if you have Abend-Aid available it provides you with the current record (buffer) of each file; in a standard system dump you have to dig for this data.
Back to top
View user's profile Send private message
roopannamdhari
Warnings : 1

New User


Joined: 14 Sep 2006
Posts: 71
Location: Bangalore

PostPosted: Fri Jul 25, 2008 12:34 pm
Reply with quote

HI,

ceedump displays content of working storage variable when ABEND occurs . Using these working stroage variable information it is possible to find the record which causing abend.
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


Joined: 22 Apr 2006
Posts: 6250
Location: Mumbai, India

PostPosted: Fri Jul 25, 2008 3:46 pm
Reply with quote

Hi,

Please search the forum on S0C7, you will get a lots of hit, some of them are -

www.ibmmainframes.com/viewtopic.php?t=31028&highlight=s0c7
www.ibmmainframes.com/viewtopic.php?t=29940&highlight=s0c7
www.ibmmainframes.com/viewtopic.php?t=29198&highlight=s0c7
www.ibmmainframes.com/viewtopic.php?t=29179&highlight=s0c7
www.ibmmainframes.com/viewtopic.php?t=10853&highlight=s0c7
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 -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts How to split large record length file... DFSORT/ICETOOL 10
No new posts SFTP Issue - destination file record ... All Other Mainframe Topics 2
No new posts FINDREP - Only first record from give... DFSORT/ICETOOL 3
No new posts To find whether record count are true... DFSORT/ICETOOL 6
No new posts ISAM and abend S03B JCL & VSAM 9
Search our Forums:

Back to Top