The performance of persistent CICS transactions is improved by default
in COBOL for AIX applications by means of module caching.
You can disable module caching by adding the following
setting to the environment file for the CICS region:
COB_CPM_SIZE_MAX=0
When a module is cached,
its execution semantics might change,
because its WORKING-STORAGE data items
that do not have VALUE
clauses and for which there are no explicit initialization statements
remain in last-used state.
If a program in memory is not cached but is instead reloaded from disk,
the last-used state of these uninitialized variables is lost.
Do not rely on the value of uninitialized
data items.
Either initialize such data items explicitly,
or temporarily use the WSCLEAR compiler option
to clear
WORKING-STORAGE to binary zeros each time the program is entered.
WSCLEAR can impact
performance because the option
increases the time and possibly space required for program initialization.
To obtain the best performance when
module caching is in effect, review your application code and
decide whether to explicitly initialize variables.
When you have made any required code changes,
reenable module caching by:
- Removing the COB_CPM_SIZE_MAX setting from the
environment file for the CICS region
- Restarting the CICS region
When testing an application,
you can enable and disable module caching dynamically
without using the environment file:
- To disable module caching, call IWZ_CPM_DISABLE.
- To enable module caching, call IWZ_CPM_ENABLE.
The CICS
NEWCOPY command
is not supported for
COBOL for AIX applications
that run under
TXSeries.
To get a fresh copy of a cached module, create a transaction that either: