Hi all, I have a question, when I debug a program with EDF utility, an ASRA abend occur, and I saw offset "00072A" in a program, but when I try to find message in JESSYSLG, the offset of message is different from the EDF session, it is "000750" , why?
EIBCPOSN = 1
EIBCALEN = 1
EIBAID = X'F1' AT X'1D1D00EA'
EIBFN = X'0000' AT X'1D1D00EB'
EIBRCODE = X'000000000000' AT X'1D1D00ED'
EIBDS = '........'
+ EIBREQID = '........'
OFFSET:X'00072A' INTERRUPT: DATA EXCEPTION
ABEND : ASRA PSW: X'078D2000 9DF13750 00060007'
PF1 : UNDEFINED PF2 : SWITCH HEX/CHAR PF3 : END EDF SESSION
PF4 : SUPPRESS DISPLAYS PF5 : WORKING STORAGE PF6 : USER DISPLAY
PF7 : SCROLL BACK PF8 : SCROLL FORWARD PF9 : STOP CONDITIONS
PF10: PREVIOUS DISPLAY PF11: EIB DISPLAY PF12: REGISTERS AT ABEND
DFHAP0001 CICSAAAA An abend (code 0C7/AKEA) has occurred at offset X'00000750' in module DEMO04.
(Module:DFHMEME) CICS symptom string for message DFHAP0001 is
PIDS/5655M1500 LVLS/640 MS/DFHAP0001 RIDS/DFHSRP PTFS/UK05645
AB/S00C7 AB/UAKEA RIDS/DEMO04 ADRS/00000750
DFHDU0205 CICSAAAA A SYSTEM DUMP FOR DUMPCODE: AP0001 , WAS SUPPRESSED BY THE GLOBAL SYSTEM DUMP SUPPRESSION OPTION
Joined: 14 Jan 2008 Posts: 2504 Location: Atlanta, Georgia, USA
The OFFSET to look for in the compilation is at X'750'. Compile the program using the options LIST,NOOFFSET, which will produce the Assembler expansion and you'll be able to see the exact instruction being executed at X'750', which is probably a packed-decimal instruction (IE: ZAP).
What's missing here is the length of the COBOL CICS Stub, which is X'26' in length and is never accounted for in the CEDF abend.