z/OS DFSMSdfp Checkpoint/Restart
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Generation Data Sets

z/OS DFSMSdfp Checkpoint/Restart
SC23-6862-00

No automatic cataloging of generation data sets (GDS) takes place. If certain generation data sets of a generation data group are to be cataloged, you must catalog them. The order in which they are cataloged determines the relative generation numbers of the generation data sets for reference by later jobs. The last generation data set becomes the 0 generation, the next-to-last cataloged generation data set becomes the -1 generation, and so on.

You can code the disposition parameter of a generation data set DISP=(NEW,CATLG,KEEP) or DISP=(NEW,CATLG,CATLG). Both will allow a restart without any change in the JCL, regardless of how the checkpointed job ended.

If you code DISP=(NEW,CATLG,KEEP) and the checkpointed job abnormally terminates, the data set is kept. When the restart job completes successfully, this data set is cataloged. If you code DISP=(NEW,CATLG,CATLG) and the checkpointed job abnormally terminates, the data set is cataloged. When the restart job completes, the data set is not cataloged because it already exists on the catalog. However, if the generation data set is to be dynamically allocated, you must code the disposition DISP=(NEW,CATLG,CATLG).

Generation data sets created by one step of a job can be passed to subsequent steps in the same job and can be referenced by the relative generation numbers assigned at the time of creation, whether or not the generations were cataloged.

For deferred step restart, the generation data group name table (GDGNT) is recreated from the catalog. The last generation data set cataloged prior to termination of the job becomes the 0 generation and is used for the base name in the GDGNT. This may not be the same as the base name when the job was initially run; you must know which generation data sets were cataloged and in what order the data sets were cataloged, and the JCL must be modified accordingly.

For a deferred checkpoint/restart, no modification of the relative generation number in the JCL is necessary.

When a job is started, the base name (0 generation name) of each generation data group is placed in the GDGNT. The GDGNT is never changed unless a new generation level is cataloged. It is saved at a checkpoint and is available for both automatic and deferred checkpoint/restart. The restart takes place without any change in the JCL, whether or not generations previously created by the job were cataloged.

When using generation data groups, the disposition of the data set should be specified correctly to avoid having to change the JCL at restart time. If DISP=(NEW,CATLG,CATLG) was specified, then the generation data group (GDG) number is set to (0) at the time of restart and the checkpointed data set is now at GDG(-1), regardless of how the job completed. In order for generation data sets to maintain their respective generation numbers at checkpoint and restart time, the disposition should specify DISP=(NEW,CATLG,KEEP). This will prevent the generation level from changing if the job step fails. If, however, you wish to restart a job that completed without failing, you must change the JCL of the job to be resubmitted to get the correct generation levels.

Note: A job that contains generation data sets referred to by a relative generation number of +1 or greater and with a disposition of OLD, SHR, or MOD is failed by the JES3 interpreter service unless the UNIT parameter is included in the DD statement. With UNIT specified, the JES3 interpreter service permits this data set to be allocated on a deferred basis.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014