System definitions for recovery-related functions

This topic covers the system definitions needed to ensure that CICS® regions provide the required recovery and restart support for your CICS applications. The information is a starting point, so that you know what to look for in the appropriate book in the CICS library.

For information about individual resource recoverability, see Defining recoverability for CICS-managed resources.

System recovery table (SRT)

See Processing operating system abends and program checks for a brief overview of the system recovery program and table.

You are recommended to specify a system recovery table on the SRT system initialization parameter. If you do not specify a table suffix on this system initialization parameter, it defaults to YES, which means that CICS tries to load an unsuffixed table (which probably won’t exist in your load libraries). There is a pregenerated sample table, DFHSRT1$, supplied in CICSTS31.CICS.SDFHLOAD, and if this is adequate for your needs, specify SRT=1$. This table adds some extra system abend codes to the built-in list that CICS handles automatically, even if you define only the basic DFHSRT TYPE=INITIAL and TYPE=FINAL macros.

If you want to add additional system or user entries of your own, modify the sample table. For information about modifying an SRT, see the CICS Resource Definition Guide.

CICS-required resource definitions

CICS provides a number of required groups of resource definitions. All these CICS-required groups are included in the CICS-supplied startup group list, DFHLIST.

Included in DFHLIST are the following groups, which provide basic recovery functions:

Ensure that your CICS region includes all these CICS-required groups by including DFHLIST as one of the lists specified on the GRPLIST system initialization parameter. For information about the contents of these groups, see the CICS Resource Definition Guide.

Definition of system log streams and general log streams

Defining system log streams for each CICS region is the most fundamental of all the recovery requirements. A system log is mandatory to maintain data integrity in the event of transaction or system abends, and to enable CICS to perform warm and emergency restarts.

CICS uses the services of the MVS™ system logger for all its system and general logging requirements. The CICS log manager writes system log and general log data to log streams defined to the MVS system logger. For more information, see Defining system and general log streams.

System initialization parameters

The following list summarizes the system initialization parameters that you need to consider for recovery and restart purposes. For more information about these, see the CICS System Definition Guide.

AILDELAY={0-hhmmss}
AIRDELAY={700-hhmmss}
AKPFREQ={4000-65535|0}
CSDBKUP={STATIC|DYNAMIC}   (Valid only for CSDRLS=NO
CSDFRLOG={NO|1-99}     (Valid only for CSDRLS=NO
CSDRECOV={NONE|ALL|BACKOUTONLY}      (Valid only for CSDRLS=NO
FCT={YES|xx|NO}
ICP=COLD
NEWSIT={YES|NO}
PGAICTLG={MODIFY|NONE|ALL}
PGAIEXIT={DFHPGADX|name}
PGAIPGM={INACTIVE|ACTIVE}
PLTPI={YES|xx|NO}
PLTSD={YES|xx|NO}
PSDINT={0-hhmmss}
RST={YES|NO}
SDTRAN={CESD|name_of_shutdown_tran|NO}
SRT={YES|xx|NO}
START={AUTO|(AUTO,ALL)|COLD|INITIAL|STANDBY}
STGRCVY={NO|YES}
TBEXITS=([name1][,name2][,name3][,name4][,name5])
TS=COLD
TST={YES|xx|NO}
UOWNETQL=user_defined_value

Activity keypoints are strongly recommended to reduce the time take to perform an emergency restart. Therefore, you should specify a nonzero value for AKPFREQ (the default is 4000.) For a discussion about how to set the activity keypoint frequency, see Activity keypointing.

If you code NEWSIT=YES at a warm start, the values in the SIT that would normally be ignored on a warm restart take effect, overriding any system initialization parameters stored in the warm keypoint at normal shutdown. The SIT is still modified, even with NEWSIT, by run-time system initialization parameters specified in the PARM string, from SYSIN, or at the console.

Files

For VSAM files defined to be accessed in RLS mode, define the recovery attributes in the ICF catalog, using IDCAMS.

For VSAM files defined to be accessed in non-RLS mode, you can define the recovery attributes in the CSD file resource definition, or, optionally, in the ICF catalog, providing your level of DFSMS supports this.

For BDAM files, you define the recovery attributes in the FCT.

Transient data queues

If you want your intrapartition queues to be recoverable, specify the recovery option in the definition for each queue. See the CICS Resource Definition Guide for information about defining the recovery option, RECOVSTATUS.

Temporary storage table (TST)

If you want your temporary storage queues to be recoverable, define them in a temporary storage table (TST) using the DFHTST TYPE=RECOVERY macro. When you define your temporary storage queues in a TST, note that the TSAGE parameter influences the recovery characteristics of that temporary storage.

Use the TST system initialization parameter to specify the suffix of the temporary storage table that you want CICS to load at initialization.

Program list table (PLT)

Use the DFHPLT macro to create program list tables that name each program executed during initialization or controlled shutdown of CICS. You specify the PLTPI system initialization parameter for the PLT to be used at initialization, and the PLTSD system initialization parameter for the PLT to be used at shutdown. You can also specify the shutdown PLT on the CICS shutdown command.

If you have global user exit programs that are invoked for recovery purposes, they must be enabled during the second stage of CICS initialization. You can enable these global user exit recovery programs in application programs specified in the first part of the PLTPI.

See the CICS Resource Definition Guide for information about defining program list tables.

Transaction list table (XLT)

There are two ways you can specify transactions that can be initiated from a terminal during the first quiesce stage of normal shutdown:

  1. Use the DFHXLT macro to create a transaction list table that names the transactions.
  2. Specify the SHUTDOWN(ENABLED) attribute on the transaction resource definition.

[[ Contents Previous Page | Next Page Index ]]