|
To perform a deferred checkpoint/restart, you must provide the
data set environment required by the restart job, using conditional
dispositions during the original execution.
Conditional dispositions should be used to: - Keep all data sets used by the restart step.
- Catalog
all data sets passed from steps preceding the restart step to steps
following the restart step. Although the step that terminates abnormally
is not using the passed data sets, its termination causes the cataloging
of the data sets if the conditional catalog parameter is used in the
preceding steps.
Note: - Temporary data sets cannot be kept.
- If the DD statement for any data set at checkpoint time had DISP=(NEW,DELETE,CATLG),
you probably want to uncatalog after completion of the restarted job
or job step by using access method services (IDCAMS), ISPF or IEHPROGM.
Dynamically deallocated
data sets have the disposition processed as specified at the time
of deallocation. Conditional disposition processing is not performed
during abend.
The
following rules must be adhered to when resubmitting a job for a deferred
checkpoint/restart:
- A RESTART parameter with a checkid subparameter
must be coded on the JOB statement.
- A SYSCHK DD statement
must be placed in the job immediately before the first EXEC statement.
- The EXEC statements in the
job must have unique names. (Upon restart, the system searches for
the named restart step.)
- The JCL statements and data in steps preceding or following the
restart step can be different from their original forms. However,
all backward references must be resolvable.
- The restart step must have a DD statement corresponding to each
DD statement present in the step in the original, and the names of
the statements must be the same as they were originally. However,
the restart step can contain, in any position, more DD statements
than it contained originally. Except as noted in item 9 below. The
total number of volumes specified at restart must equal or exceed
the number specified at the checkpoint.
- If a DD statement in the restart
step in the original job defined a data set that was open at the checkpoint
to be used, the corresponding statement in the restart job must refer
to the same data set, and the data set must be on the same volume,
and, in general, have the same extents recorded in its DSCB as it
did originally. (See the exceptions in the note that follows.) This
means no one can use the DEFRAG function of DFSMSdss to consolidate extents.
If the data set is multivolume and is processed by the sequential
access method (SAM), only the part of the data set on the volume in
use at the checkpoint needs to be the same as it was originally.
Note: The
extents can differ as follows:
- In the DD statement, you can request that additional space be
allocated to the data set when the space currently available is exhausted.
If space is allocated after a checkpoint is taken, this space is indicated
in the DSCB; after restart from the checkpoint, the space is released,
and the DSCB contents are changed to what they were at the checkpoint.
- In the DD statement, you
can code RLSE to request that unused space be released when the data
set is closed. If the space is released, the DSCB may indicate a reduced
extent for the data set when deferred restart at a checkpoint occurs;
no space is allocated to replace released space. Space is not released
when a data set is open when the step abends, and step termination
is followed by automatic restart.
JCL specified
data sets that were dynamically unallocated prior to the checkpoint
are not allocated at restart.
When there is no need to read or modify a
data set after restart, the data set can be replaced by a dummy data
set if the original data set was processed by SAM and the job step
is not restarted from a checkpoint within the data set's end-of-volume
exit routine. A VSAM data set using the ISAM interface to VSAM cannot
be replaced by a dummy data set. Any dummy data set present at the
time of the checkpoint must be present as a dummy data set at restart.
Allocation is done for each DD statement in the job step where the
checkpoint is taken, even if the data set is closed at the time of
the checkpoint.
- The data in the restart step need
not be the same as it was originally. If data following a DD * statement
was present originally and is entirely omitted in the restart job,
the delimiter (/*) statement following the data may also be omitted.
The delimiter statement following a DD DATA statement must not be
omitted.
- The
VOL parameter of a DD statement must refer to at least those volumes
it refers to at checkpoint time. More volumes may be added if desired.
The following DD statement parameters cannot be changed: DISP, DCB,
LABEL, and UNIT.
- Except for the requirements stated in rules 4 through 8, the JCL
statements and data in the restart step can be different from their
original forms. In particular, the DUMMY parameter can be used for
any data that was not open at the checkpoint.
- If
data sets are passed from steps preceding the restart step to steps
following it, the DD statements receiving the data sets must entirely
define them. They must explicitly specify volume serial number, device
type, data set sequence number, and label type, unless this information
can be retrieved from the catalog. It is recommended that passed data
sets be conditionally cataloged during abnormal termination of the
original execution. Label type cannot be retrieved from the catalog.
- The EXEC statement PGM and COND parameters and the DD statement
VOL=REF parameter must not be used in the restart step or in steps
following the restart step if they contain values of the form stepname,
or stepname.procstepname, referring to a
step preceding the restart step.
- The DD statement VOL=REF parameter is ignored if restart is attempted
from a checkpoint taken when the DD statements are opened out of sequence
and the referenced DD statement requested nonspecific tape volumes.
- The volume serial number must be coded
on a restart DD for a generation data group if the deferred checkpoint/restart
volume serial number list is to be different from the original.
|