A fix is available
APAR status
Closed as program error.
Error description
If a COBOL v4.2 or earlier compiled target module is dynamically called from both COBOL v4.2 or earlier and COBOL v5 or later compiled modules, and then cancelled and called again in like manner, the operating system use count for the so called module will increase. With enough call/cancel cycles, for example under IMS with CANCEL_PGM=Y, the failure CSV002I REQUESTS FOR MODULE {module} EXCEED MAXIMUM USE COUNT. can take place. Further, when called from COBOL v4.2, the target module may have different working-storage instances than calls from COBOL v5+.
Local fix
Avoid mixed callers of COBOL v4.2 or earlier compiled modules, for example by compiling such a target module with COBOL v5+.
Problem summary
**************************************************************** * USERS AFFECTED: Users of Enterprise COBOL V5 and later * * releases running programs which dynamically * * call COBOL V4.2 programs which were * * dynamically loaded by pre-V5 COBOL programs * * and cancelled later. * **************************************************************** * PROBLEM DESCRIPTION: Pre-V5 COBOL programs are * * inadvertently loaded multiple times. * * The caller might terminate with * * CEE3503S or/and CSV002I messages. * **************************************************************** * RECOMMENDATION: Apply the provided PTF * **************************************************************** The COBOL Runtime fails to check loaded pre-V5 COBOL programs with the following scenario where mix of COBOL pre-V5 and V5+ dynamic call and CANCEL statements are invoked. 1) A(V5+) calls B1(pre-V5), then B1 calls C(pre-V5) 2) A(V5+) calls B2(V5+), then B2 calls C(pre-V5) 3) A cancels B1, B2, and B2 4) Repeat 1) - 3). (All calls above are dynamic) The call to 'B2' in 2) in a second iteration inadvertently loads 'C' again although it was already loaded by 1). If 'C' is compiled with NORENT, it results in loading another copy of 'C'. If 'C' is compiled with RENT, it results in increasing the system load counter for 'C'. When it reaches the system limit, the program terminates with CEE3503S or/and CSV002I messages. FIXCAT keyword: COB0501T/K COB0502T/K COB0601T/K COB0602T/K
Problem conclusion
The COBOL Runtime is corrected to check and call programs already loaded by pre-V5 programs.
Temporary fix
Comments
APAR Information
APAR number
PH06843
Reported component name
LE ENT COBOL LI
Reported component ID
568819812
Reported release
7B0
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2018-12-28
Closed date
2019-01-14
Last modified date
2019-02-02
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
PH07205 UI60657
Modules/Macros
IGZCEV4 IGZCMGEN IGZCMGUE IGZLLIBV IGZXAPI IGZXCDA IGZXD24 IGZXDMR IGZXLPIO IGZXLPKA IGZXLPKB IGZXLPKC IGZXLPKD IGZXLPKE IGZXLPKF IGZXLPKG IGZXPK2
Fix information
Fixed component name
LE ENT COBOL LI
Fixed component ID
568819812
Applicable component levels
R7B0 PSY UI60657
UP19/01/30 P F901
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":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SSCVR7X","label":"Runtime"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
14 December 2020