CA Gen Compatibility (CMP) Modules and the COBOL 5 Compiler

Document ID : KB000039310
Last Modified Date : 14/02/2018
Show Technical Document Details

Problem:

Batch, CICS, IMS and TSO applications that contain CA Gen Compatibility (CMP) modules may consume large amounts of memory at runtime if the CMP modules are compiled with the COBOL 5 compiler. The amount of memory consumed will vary depending upon the number of times CA Gen runtime functions are called from CMP modules.

Cause:

CA Gen CMP modules contain runtime stubs that allow CMP modules (non-DLLs) to call the CA Gen runtimes (DLLs). These runtime stubs use a Language Environment (LE) service to implement this functionality. This LE service no longer returns the expected value after CMP modules have been compiled with the COBOL 5 compiler. This causes the runtime stubs to allocate new data areas for every CA Gen runtime function call.

IBM plans to fix this LE service, but their fix is not scheduled to be released until the follow-on to z/OS 2.2. Given their current release scheme, they estimated it would take approximately two years from when this problem was reported in August 2015. Therefore CA made a change to the runtime stubs to resolve the problem. This change will continue to work even after the IBM fix to the LE service is released.

Resolution:

Apply PTF RO83289 for Gen 8.0.

Apply PTF RO83428 for Gen 8.5.

These PTFs provide modified CA Gen Compatibility runtime stubs to correct the problems that can occur after a CMP module has been compiled with the COBOL 5 compiler.

Since the runtime stubs are statically linked into each CMP module, the CMP module needs to be relinked (reinstalled) with the modified stubs in order to correct the problem if the CMP module has already been compiled with the COBOL 5 compiler.

However, if the CMP module has not been compiled with the COBOL 5 compiler, then there is no need to relink (reinstall) the CMP module at this time.  The modified stubs will be picked up the next time the CMP module is installed.

Additional Information:

For more information about using the COBOL 5 compiler with CA Gen, please see the following article: TEC1273827