PLI program compile abended with CODE=U4093
search cancel

PLI program compile abended with CODE=U4093

book

Article ID: 247898

calendar_today

Updated On:

Products

Endevor

Issue/Introduction

Endevor package job abended with CODE=U4093 Reason code F8 in the PLI program compile step.

This abended is found after upgrading z/OS from V2R3 to V2R5 and the Endevor relevant PTFs were applied.

C1X0011S  STEP PLI PROGRAM IBMZPLI ABENDED, CODE=U4093                        
C1G0129E  STEP PLI RC (U4093) EXCEEDS THE MAX RC (0004) FOR THE PROCESSOR STEP

This problem doesn't occur with C1BM3000.

Is it a storage issue ?

Environment

Release : All Supported Releases
z/OS: 2.5

Cause

The U4093-F8 abend is NOT related to memory constraints, rather to a mix of LE run time. 
Here are some observations:
" with z/OS 2.5, IBM created a new version of LE run time - CEE.SCEERUN & family
" C1BM3000 is not an LE program.
" ENBP1000 invokes a C program, so it's an LE program.
" The processor involved has LE run time libraries (iprfx.CEE.SCEERUN and iprfx.CEE.SCEERUN2) in the STEPLIB concatenation

This is what should happen:
" C1BM3000 is a non-LE program. When it executes the processor, CEEBINIT and CEEPLPKA are loaded from iprfx.CEE.SCEERUN and are consistent. 
 Everything works fine regardless of the z/OS release
" ENBP1000 is an LE program. When it starts, CEEBINIT is loaded from a linklist library, but not CEEPLPKA. 
 When it executes the processor, CEEBINIT and CEEPLPKA are loaded. 
 Since CEEBINIT is already loaded and is reentrant, its use count is incremented. However, CEEPLPKA is still loaded from iprfx.CEE.SCEERUN.

 

Resolution

On z/OS 2.3, the CEEBINIT that was loaded from the linklist is compatible with the one from iprfx.CEE.SCEERUN, therefore, the job runs fine.
On z/OS 2.5 however, the CEEBINIT that was loaded from the linklist is incompatible with the one from iprfx.CEE.SCEERUN. 
This results in the U4093-F8 abend.

Make sure that ENBP1000 is using the same LE run time libraries as the processor. 
Either put the iprfx.CEE.SCEERUN and iprfx.CEE.SCEERUN2 libraries in the STEPLIB concatenation of the ENBP1000 step or
update the processor to remove the iprfx.CEE.SCEERUN and iprfx.CEE.SCEERUN2 libraries from the STEPLIB.