SYSOUT Message



Get solution for your ABEND Codes & System Error Messages, SQL Codes, File Status etc...

SYSOUT Message

Postby chetan_007 » Thu Apr 30, 2009 8:19 pm

During one of the job failure, Sysout displayed below message.
How can I check the exact line of the code that's causing a problem using Offset value or Address??

Could you please explain me importance of offset value and Address while checking the problem.



Message from SYSOUT:-
CEE6750C The system or user abend U2002 R=NULL was issued.
From compile unit AW415 at entry point AW415 at statement 786 at compile unit offset +00005784 at entry
offset +00005784 at address 0D441980.

Plz clarify
chetan_007
 
Posts: 24
Joined: Sun Mar 02, 2008 3:22 am
Has thanked: 0 time
Been thanked: 0 time

Re: SYSOUT Message

 

Re: SYSOUT Message

Postby swd » Thu Apr 30, 2009 9:04 pm

Hi,

You need to compile your code and you'll get (or should get) a section in the COBOL compile output that looks something like this

LINE #  HEXLOC  VERB                        LINE #  HEXLOC  VERB 
023835 0098FE IF                            023836 00990E SET       
023838 00991A SET                           023841 00992A PERFORM   
023843 009950 PERFORM                       023847 009970 INITIALIZE
023850 009B00 SET                           023851 009B06 SET


The offset in your abend message referes to HEXLOC in the compile output. You should find the nearest HEXLOC to your offset, then the LINE in the compile output should be the offending line causing the abend (note the HEXLOC and the offset usually are not the same, so you need to look for the closest match).

Hopefully you'll be able to do this. There are other tools you can use such as Abendaid, Fault Analyser etc. but I don't know if you have these products installed. Perhaps talk to your local friendly Systems programmer who should be able to help.

Good luck
Steve
User avatar
swd
 
Posts: 109
Joined: Wed Feb 18, 2009 9:18 pm
Location: UK
Has thanked: 0 time
Been thanked: 0 time

Re: SYSOUT Message

Postby chetan_007 » Fri May 01, 2009 11:00 pm

I never found exact match in the HEXLOC section, as you said we need to check it for nearest match.

I have one more question, Any idea about Address??
What is the importance of it and how it will be helpful in debugging the problem.

Thanks a lot for educating me on Offset values.
chetan_007
 
Posts: 24
Joined: Sun Mar 02, 2008 3:22 am
Has thanked: 0 time
Been thanked: 0 time

Re: SYSOUT Message

Postby dick scherrer » Fri May 01, 2009 11:13 pm

Hello,

I never found exact match in the HEXLOC section
Often (usually) one cobol statement generates multiple actual instructions and the one the abends is not at an exact displacement in the compile.

Depending on which address you mean (many are used in the execution of a program), the address is probably the address of the failed instruction. Going to that place in the dump and referring to something that shows the construction of all of the "machine" instructions (what used to be referred to as a "green card" or a "yellow card") one can use the registers and displacements (more addresses) to see what the program was doing when the abend occurred.

Many systems have a tool like AbendAid that does a lot of this work for the developer.
Hope this helps,
d.sch.
User avatar
dick scherrer
Global moderator
 
Posts: 6304
Joined: Sat Jun 09, 2007 8:58 am
Has thanked: 3 times
Been thanked: 91 times


Return to ABENDS & SQL Codes