A fix is available
APAR status
Closed as program error.
Error description
In the LP(64) environment, if a compile unit containing QSAM file definitions is repeatedly entered, parts of QSAM file initialization are also repeated--they should only be done on first entry. This leaks DCBs (data control blocks), which reside below the line where a leak is likely to have adverse outcomes. DCBEs (data control block extensions) are also leaked, but being above the line, they have a lesser impact. Note that a typical file reading mainline compile unit is unaffected by this issue because it is only entered once.
Local fix
In some contexts, the file use can be isolated in a separate module that's entered only once.
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL 6.3 and later * * releases running AMODE 64 COBOL programs * * which have QSAM or VSAM I/O. * **************************************************************** * PROBLEM DESCRIPTION: When an application calls * * a COBOL program running in AMODE 64 * * with QSAM or VSAM I/O such as OPEN, * * READ, or CLOSE and is called multiple * * times, the application might abend or * * terminate with unexpected behavior * * due to out of BELOW THE LINE storage. * * * * At times, the BELOW THE LINE storage * * shortage results in abend occurred * * from COBOL Runtime entry * * 'initOneQSAMFile'+X'4E0' * * in CELQV004 module with the following * * traceback. * * * * ... * * initOneQSAMFile +000004E0 [abend] * * IGZQIFCB +0000087E [calls * * initOneQSAMFile] * * IGZQPRS2 +0000031A [calls IGZQFICB] * * ... * * main * **************************************************************** * RECOMMENDATION: Install the provided PTF. * **************************************************************** The AMODE 64 COBOL run-time routine unconditionally created new I/O DCB (Data control block) and DCBE (Data Control Block Extension) repeatedly for each time the COBOL program was called. Eventually It caused BELOW THE LINE storage shortage. volume. COB0603T/K COB0604T/K
Problem conclusion
The COBOL Runtime logic has been fixed. I/O DCB and DCBE are conditionally created and reused.
Temporary fix
Comments
APAR Information
APAR number
PH50667
Reported component name
LE ENT COBOL LI
Reported component ID
568819812
Reported release
7D0
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2022-11-03
Closed date
2022-11-22
Last modified date
2022-12-01
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UI83417 UI83418
Modules/Macros
CELQSG04 CELQV004 IGZQAPI IGZQCA64 IGZQCDA IGZQINPL IGZQJNI2
Fix information
Fixed component name
LE ENT COBOL LI
Fixed component ID
568819812
Applicable component levels
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SS6SG3","label":"Enterprise COBOL for z\/OS"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7D0","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
01 December 2022