View previous topic :: View next topic
|
Author |
Message |
pradipta786
New User
Joined: 13 Jun 2007 Posts: 3 Location: kochi
|
|
|
|
Hi All,
I am facing an unusual abend while trying a transaction in the CICS screen. The screen works perfectly fine with the Baseline load, but when the online load is moved from a CHGMAN pkg it fails with an ASRA abend. I have not made any change to the code or compiler options of the Online programs.
Our compiler option was last changed from COBOL3 to COBOLE. The DUMP gives me the following message :
An,ASRA,abend occurred in program,DFSLI000.The,Protection Exception,occurs when the Storage Protect Key of an operand,
instruction, or data does not match the program's protection key.? This
normally occurs by executing an instruction that either references or
resides at an illegal storage location.
This error occured within a program but is probably caused by inadvertently overlaying the program or save areas with invalid data.
****
I compared the two online loads, i.e. the baseline load and the CHGMAN pkg load, and could find the DFSLI000 is newly inserted. But while compiling the programs I dont get any such option.
Can anybody suggest me what can be the cause of such an issue or where I can check to avoid such a scene.
Thanks a lot in advance for the help.
Pradipta Subudhi |
|
Back to top |
|
|
socker_dad
Active User
Joined: 05 Dec 2006 Posts: 177 Location: Seattle, WA
|
|
|
|
Actually, according to my documentation, ASRA means that the task has terminated abnormally because of a program interrupt.
In my experience, I get these because of data errors, i.e., alpha data in numeric fields - just like a S0C7 in batch.
Personally, I would NEWC (newcopy) the load module in the test region, run Xpediter (XPED nnnn where 'nnnn' is your module's name), set a break point and step through it until the error is reached.
However, from your explanation, it sounds like you are getting this ASRA just on a move of the load module from one region to another? Weird. I've never heard of this error. Usually, the region doesn't care about the load module until you try to execute it. |
|
Back to top |
|
|
William Thompson
Global Moderator
Joined: 18 Nov 2006 Posts: 3156 Location: Tucson AZ
|
|
|
|
With the ASRA, there wil be either DFHAP0001 or DFHSR0001 and possibly a DFHSR0622.
What is the full text of that/those message(s)? |
|
Back to top |
|
|
Earl
Active User
Joined: 17 Jun 2007 Posts: 148 Location: oklahoma
|
|
|
|
your test CICS region may not have "storage protect" turned on.
I would contact technical support. |
|
Back to top |
|
|
pradipta786
New User
Joined: 13 Jun 2007 Posts: 3 Location: kochi
|
|
|
|
Hi,
I found DFSLI000 getting included in my CHGMAN package load but the baseline doesn't have this.
And the abend message is as put below :
----------------- XPEDITER/CICS - ASSEMBLER BREAK/ABEND (2.20) ------------JSA2
COMMAND ===> SCROLL ===> CSR
PROGRAM: DFSLI000 +++++++++++ NO SOURCE AVAILABLE. USE HELP KEY ++++++++++++
CAUSE: PROTECTION EXCEPTION ABEND CODE: ASRA
APPLID: DHIPM053 USERID: DPSUBU TERM: 2002 NETNAME: W95080D3 TRAN: AEGN
INTERRUPT OFFSET: 00008E ADDRESS: BA9F9A56 PSW: 079D1000 BA9F9A5A 00040004
RESUME OFFSET: 00008E ADDRESS: BA9F9A56 LAST CICS COMMAND:
INSTRUCTION: 58F0 F018 L 15,X'018'(0,15)
REGISTERS:
0-3 00000000_00000002 00000000_3880A220 00000000_3881A104 00000000_3A9ABB40
4-7 00000000_3881A300 00000000_3846373C 00000000_384636EC 00000000_00000000
8-B 00000000_3A9AA1E4 00000000_38819FC0 00000000_3881B300 00000000_3A9AAE44
C-F 00000000_38808040 00000000_38809DF8 00000000_BA9ABC4E 00000000_00006080
Thanks |
|
Back to top |
|
|
William Thompson
Global Moderator
Joined: 18 Nov 2006 Posts: 3156 Location: Tucson AZ
|
|
|
|
Protection exception trying to access an address located at X'6080', out of reach for your program.
Wrong key?
Protected CICS area?
How is your transaction and program defined?
Is the load inside CICS generated code? |
|
Back to top |
|
|
pradipta786
New User
Joined: 13 Jun 2007 Posts: 3 Location: kochi
|
|
|
|
Thanks a lot for the reply
I have defined the PCT entry for the transaction , and given the PPT entry for the program . The load of DFSLI000 is getting included in the CICS generated load , but this load does not seem to be present in the baseline load.
I have also copied the load of DFSLI000 into the IMS program library that my CICS region is connected to as well .
Could you let me know how did you get the address (X'6080') from the log . |
|
Back to top |
|
|
William Thompson
Global Moderator
Joined: 18 Nov 2006 Posts: 3156 Location: Tucson AZ
|
|
|
|
L 15,X'018'(0,15)
Load R15 from X'18' off of R15
C-F 00000000_38808040 00000000_38809DF8 00000000_BA9ABC4E 00000000_00006080
R15 = 00006080
INTERRUPT OFFSET: 00008E
Look at your program at X'8E', there you should be able to find the load:
58F0 F018 |
|
Back to top |
|
|
William Thompson
Global Moderator
Joined: 18 Nov 2006 Posts: 3156 Location: Tucson AZ
|
|
|
|
Have you checked the tranid's TASKDATALoc and TASKDATAKey and the program's DAtalocation? |
|
Back to top |
|
|
ajinth_c
New User
Joined: 11 May 2007 Posts: 4 Location: Bangalore
|
|
|
|
Hi William ,
How do we check the trans id s TASKDATALOC and TASKDATAKEY ??? Do we have any specific command for that ??
Thanks in advance,
Regards,
Ajinth |
|
Back to top |
|
|
William Thompson
Global Moderator
Joined: 18 Nov 2006 Posts: 3156 Location: Tucson AZ
|
|
|
|
You said you defined the transid, what did you define for them?
What is at X'8E' in your program? |
|
Back to top |
|
|
ajinth_c
New User
Joined: 11 May 2007 Posts: 4 Location: Bangalore
|
|
|
|
The tran name is "AEBA" and the prog name is "OE00010T" . So we just used the CEDA command to define the PPT and the PCT entries and then installed the same in CICS . X'8E' is one of the IMS calls in our program .
The particular portion where it is failing is
0010-SCHEDULE-PSB.
MOVE 620-PCB TO 620-FUNCTION.
MOVE 900-PSB-NAME TO 620-PSBNAME.
MOVE 900-PSB-NAME TO 600-PSB-NAME.
CALL 'CBLTDLI' USING 620-FUNCTION
620-PSBNAME
ADDRESS OF DLIUIB.
Regards,
Ajinth |
|
Back to top |
|
|
Earl
Active User
Joined: 17 Jun 2007 Posts: 148 Location: oklahoma
|
|
|
|
if its not failing in your test environment, there must be a difference in definitions between test and production.
Check system settings both test and production and compare for differences.
perform
cemt inquire system
Storeprotect(Active) << storage protect is ON for this region
perform
cemt inquire program(DFSLI000)
cemt inquire tran (AEBA)
Taskdatakey(Udatakey) user data key
Taskdatakey(Cdatakey) cics data key
perform
cemt inquire progr(OE00010T)
Leng(0000008576) << make sure proram lengths are the same |
|
Back to top |
|
|
|