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
 

 

Fixing S0C7 abend

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> PL/I & Assembler
View previous topic :: :: View next topic  
Author Message
sasti_a

New User


Joined: 20 Oct 2008
Posts: 4
Location: UK

PostPosted: Wed Nov 05, 2008 7:55 pm    Post subject: Fixing S0C7 abend
Reply with quote

Hi,
I have got a S0C7 abend in my PL/1 program which interacts with both IMS and DB2. The output gives the offset value at which the abend occurs. The program is too big to analyse. So, it will be helpful if I know how to find the statement in which the program had abend by using the offset value.

Thanks,
Sasti
Back to top
View user's profile Send private message

Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 7996
Location: Bellevue, IA

PostPosted: Wed Nov 05, 2008 8:09 pm    Post subject:
Reply with quote

If the program was compiled with OFFSET or LIST option, you can use the offsets provided in the compile listing to find the statement. If not, the easiest way to solve the problem may be to recompile the code with one of these options.
Back to top
View user's profile Send private message
sasti_a

New User


Joined: 20 Oct 2008
Posts: 4
Location: UK

PostPosted: Wed Nov 05, 2008 8:58 pm    Post subject: Reply to: Fixing S0C7 abend
Reply with quote

Actually, I have the offset values appearing in both the spool output as wella sCompiler listing. I f I search for the offset value I got from spool, am not able to trace anything.
I have got offset value in spool outpiu like this '00001ACC'.If I search the compiler listing with this offset value am not able to find anything.
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 7996
Location: Bellevue, IA

PostPosted: Wed Nov 05, 2008 9:21 pm    Post subject:
Reply with quote

You should be able to find a bracket -- a verb with a value less than 00001ACC and the next with a value larger than 00001ACC. That tells you the statement with the problem; proceed from there to look at the variables for that statement.
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 Nov 05, 2008 9:38 pm    Post subject:
Reply with quote

Hello,

Quote:
If I search the compiler listing with this offset value am not able to find anything.
It is quite common for a single source instruction to generate multiple assembler instructions. The abend most likely occurred in one of these rather than the instruction precisely at the offset of the abend.

As Robert suggests, you need to look for the instruction address before and after the abend offset.

Something else that is fairly quick to do is to look at the data fields (being used by the code that abends) in the dump and determine which field has the invalid value.
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 -> PL/I & Assembler All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts IMS region inactive - User abend code... gthmrj IMS DB/DC 5 Tue Mar 07, 2017 12:29 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 abend sort based on count records in ... anatol DFSORT/ICETOOL 5 Mon Oct 17, 2016 10:10 pm
No new posts hot to get details when "EXEC CI... Andi1982 CICS 11 Tue Sep 20, 2016 5:01 pm
No new posts S213-14 ABEND explantion Apurva Mehta JCL & VSAM 5 Thu Jul 07, 2016 10:56 pm


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