Troubleshooting
Problem
Receiving a U4094 abend in Debug Tool when debugging CICS applications. The abend seems to happen when returning from a subroutine called from the program being debugged.
Symptom
CEE1000S z/OS INTERNAL ABEND. ABCODE = 4094 REASON = 00000014
Cause
User exit is not propagating the return code that was passed to it. This results in a Release of a program being done twice. The second attempt at a Release results in an INVREQ followed by the U4094.
Diagnosing The Problem
In the CICS trace, look for entries such as the following:
EXEC ENTRY RELEASE 'program ' AT X'AB16C8E0',SYSEIB,NOHANDLE,ASM,
UEH EVENT LINK-TO-USER-EXIT-PROGRAM EQAXEIIN AT EXIT POINT XEIIN
UEH EVENT RETURN-FROM-USER-EXIT-PROGRAM EQAXEIIN WITH RETURN CODE 0
UEH EVENT LINK-TO-USER-EXIT-PROGRAM EQANCXIN AT EXIT POINT XEIIN
UEH EVENT RETURN-FROM-USER-EXIT-PROGRAM EQANCXIN WITH RETURN CODE 4
UEH EVENT LINK-TO-USER-EXIT-PROGRAM xxxxxxxx AT EXIT POINT XEIIN
UEH EVENT RETURN-FROM-USER-EXIT-PROGRAM xxxxxxxx WITH RETURN CODE 0
UEH EVENT LINK-TO-USER-EXIT-PROGRAM yyyyyyyy AT EXIT POINT XEIIN
UEH EVENT RETURN-FROM-USER-EXIT-PROGRAM yyyyyyyy WITH RETURN CODE 0
PGLD ENTRY RELEASE_EXEC program
Note that user exit xxxxxxxx does not propagate return code 4.
Resolving The Problem
Modify the user exit to pass the return code that it was given, or modify the order of the user exits in the Startup PLT such that Debug Tool exits get invoked last.
Was this topic helpful?
Document Information
Modified date:
15 October 2020
UID
swg21665331