SMF Internal Step RESTART Statements

This article describes the internal step restart statements, and includes information on the format and specification of the statements, plus tips and hints.
micsrm140cd
This article describes the internal step restart statements and includes information on the format and specification of the statements, plus tips and hints.
RESTART
RESTART YES/NO
(Optional) Specify this value to activate internal step restart for DAILY and/or INCRccc database update job steps:
RESTART YES
If you do not specify or enable the RESTART parameter, then this option defaults to the following and internal step restart is disabled:
RESTART NO
Note:
Changing the RESTART parameter (either from NO to YES or from YES to NO) requires regeneration of the DAILY operational job by executing
prefix.MICS.CNTL(JCLGEND)
or by specifying DAILY in
prefix.MICS.PARMS(JCLGENU)
and executing
prefix.MICS.CNTL(JCLGENU)
. If incremental update is active for this product, also regenerate the INCRccc job.
Internal step restart can significantly reduce time and resource usage to recover from daily or incremental update processing failures.
MICS
uses acheckpoint/restart technique.
  • When internal step restart is activated, the database update job step "checkpoints" (or saves) intermediate results (work file contents) and the operational environment at the end of each processing phase.
  • Then, if required, the database update step can resume execution at the beginning of the processing phase in which the failure occurred.
  • Restart is accomplished by restoring the operational environment from the last checkpoint, bypassing completed processing phases, and resuming execution using intermediate results (work files) from the last checkpoint.
Note:
When you activate internal step restart (RESTART YES), the following optional restart parameters are enabled. These parameters have no effect if restart is disabled (RESTART NO). For more details, see the individual parameter descriptions later in this section.
  • RESTARTCKPT data_set_allocation_parameters
  • RESTARTWORK data_set_allocation_parameters
  • DYNAMWAIT minutes
Processing Phases
This product employs four database update processing phases followed by the two common roll-up phases.
FORMAT
Read raw input data, convert to SASformat, and output to intermediate workfiles
SORT1
Sort some intermediate work file contents, eliminate duplicate input data, output OPS area files to DETAIL, and complete detail processing of BATWDA data.
SORT2
Sort remaining intermediate work files, eliminate duplicate input data, output BATMUG and BATATP/ACTJTP files to DETAIL, read in suspended files from last DAY030 run, and complete preprocessing of step and interval data.
DBUPDATE
Merge data across optional multiple work files, enhance data content, create the new DETAIL cycles for remaining BAT information area files, and accounting journal files, and create DETAIL suspend files for the next DAY030 update.
DYSUM
Summarize DETAIL data to create new DAYScycles and to update current week-to-dateand month-to-date cycles.
DYAGE
Cutover new database cycles to productionand "age" existing cycles.This product employs two database update processing phases followed by the two common roll-up phases.
RESTART Considerations
Overhead
Enabling internal step restart adds some overhead to the database update job step - the cost of taking checkpoints and managing saved materials. This overhead is relatively constant and independent of input data volume. As a result, costs can outweigh potential savings when input data volume is low, for example in a test unit. For high volume, production units, internal step restart support overhead must be a minor portion of total resource usage.
Cataloged Work Files
When you enable internal step restart, the SAS work data set, internal step restart control data set, and multiple work file data sets are allocated and cataloged with permanent dataset names. The data sets are retained for use in restart if the step abends. When the step completes successfully, the data sets are deleted.
Before enabling internal step restart support, these data sets were allocated on the system "scratch" space with a temporary, system assigned data set names. If your installation standards do not allow permanent data sets on DASD volumes that are used for temporary work space, use the WORK, RESTARTCKPT, and RESTARTWORK parameters to direct the internal step restart data sets to a generic unit or storage class that allows cataloged data sets.
Dynamic Allocation
When internal step restart is active, dynamic allocation is employed for the work data sets. If your installation restricts dynamic allocation of large, cataloged data sets, use the WORK, RESTARTCKPT, and RESTARTWORK parameters to direct work data set allocation to a generic unit or storage class where dynamic allocation is allowed.
Data Set Names
The SAS work data set, internal step restart control data set, and multiple work file data sets are allocated and cataloged according to the standard
MICS
unit database data set name conventions. The default DDNAME and data set names are:
  • SAS work data set
    //cccXWORK DD DSN=prefix.MICS.cccXWORK,.....
  • Internal step restart control data set
    //cccXCKPT DD DSN=prefix.MICS.cccXCKPT,.....
  • Multiple work file data sets
    //WORKnn DD DSN=prefix.MICS.cccWRKnn,.....
These data sets conform to the same data set name conventions as your existing
MICS
data sets. This minimizes data-set-name-related allocation issues. However, you can override the data set names if required. Contact
Broadcom Support
for assistance if you must change data set names.
RESTARTCKPT
(Optional) Specify the following code to override default data set allocation parameters for the internal step restart checkpoint data set:
RESTARTCKPT data_set_allocation_parameters
Note:
RESTARTCKPT is ignored when you specify RESTART NO.
The internal step restart checkpoint data set (or cccXCKPT data set) contains processing status, control, and SAS environmental information for internal step restart processing checkpoints. This data set includes a copy of the SAS WORK format and macro catalogs, current macro variable values, and a description of work files that are required to restart DAYnnn processing.
By default, the cccXCKPT data set is allocated according to the values you specified for the WORKUNIT and WORKSPACE parameters in
prefix.MICS.PARMS(JCLDEF)
. Specify RESTARTCKPT to override this default, either to alter the space allocation or to use System Managed Storage (SMS) parameters to control data set placement and characteristics.
Note:
If you allocate insufficient space for the cccXCKPT data set, DAYnnn processing fails and can only be restarted from the beginning.
You can override the RESTARTCKPT data set allocation parameters at execution-time using the //PARMOVRD facility. For more information about execution-time override of dynamic data set allocation parameters, see Dynamic Allocation Parameter Overrides (//PARMOVRD).
Specify data set allocation parameters, separated by blanks, according to SAS LIBNAME statement syntax. If you need multiple lines, repeat the RESTARTCKPT keyword on the continuation line.
RESTARTCKPT accepts the engine/host options that are documented in the SAS Companion for the z/OS Environment, including STORCLAS, UNIT, SPACE, BLKSIZE, DATACLAS, MGMTCLAS, and VOLSER.
Do not specify the DISP parameter.
Example 1:
RESTARTCKPT STORCLAS=MICSTEMP SPACE=(xxxx,(pp,ss),,,ROUND)
STORCLAS
Specifies a storage class for a new data set.
Limit:
8 characters
SPACE
Specifies how much disk space to provide for a new data set being allocated.
xxxx
TRK, CYL, or blklen
pp
the primary allocation
ss
the secondary allocation
ROUND
Specifies that the allocated space must be "rounded" to a cylinder boundary when the unit specified was a block length. ROUND is ignored with the TRK or CYL options.
Example 2 (multiple lines):
RESTARTCKPT STORCLAS=MICSTEMP UNIT=SYSDA RESTARTCKPT SPACE=(xxxx,(pp,ss),,,ROUND)
STORCLAS
Specifies a storage class for a new data set.
Limits:
8 characters.
UNIT
Specifies the generic unit for a new data set.
Limits:
8 characters.
SPACE
Specifies how much disk space to provide for a new data set being allocated.
RESTARTWORK
(Optional) Specify the following to override default data set allocation parameters for the internal step restart WORK data set:
RESTARTWORK data_set_allocation_parameters
Note:
RESTARTWORK is ignored when you specify RESTART NO.
The internal step restart WORK data set (or cccXWORK data set) contains the intermediate work files that are not enabled to multiple work file support, including those files you could specify on the optional NOMULT statement.
By default, the cccXWORK data set is allocated according to the values you specified for the WORKUNIT and WORKSPACE parameters in
prefix.MICS.PARMS(JCLDEF)
. Specify RESTARTWORK to override this default, either to alter the space allocation or to use System Managed Storage (SMS) parameters to control data set placement and characteristics.
Note:
If you allocate insufficient space for the cccXWORK data set, DAYnnn processing fails and can only be restarted from the beginning.
You can override the RESTARTWORK data set allocation parameters at execution time using the //PARMOVRD facility. For more information about execution-time override of dynamic data set allocation parameters, see the PIOM, section 2.3.6.
Specify data set allocation parameters, separated by blanks, according to SAS LIBNAME statement syntax. If you need multiple lines, repeat the RESTARTWORK keyword on the continuation line.
RESTARTWORK accepts the engine/host options that are documented in "SAS Companion for the z/OS Environment", including STORCLAS, UNIT, SPACE, BLKSIZE, DATACLAS, MGMTCLAS, and VOLSER.
Do not specify the DISP Parameter.
Example 1:
RESTARTWORK STORCLAS=MICSTEMP SPACE=(xxxx,(pp,ss),,,ROUND)
STORCLAS
Specifies a storage class for a new data set.
Limits:
8 characters
SPACE
Specifies how much disk space to provide for a new data set being allocated.
xxxx
TRK, CYL, or blklen
pp
the primary allocation
ss
the secondary allocation
ROUND
Specifies that the allocated space must be "rounded" to a cylinder boundary when the unit specified was a block length. ROUND is ignored with the TRK or CYL options.
Example 2 (multiple lines):
RESTARTWORK STORCLAS=MICSTEMP UNIT=SYSDA RESTARTWORK SPACE=(xxxx,(pp,ss),,,ROUND)
STORCLAS
Specifies a storage class for a new data set
Limits:
8 characters
UNIT
Specifies the generic unit for a new data set
Limits:
8 characters
SPACE
Specifies how much disk space to provide for a new data set being allocated.
DYNAMWAIT
(Optional) Specify the following:
DYNAMWAIT minutes
to override the default amount of time, in minutes, the DAILY and/or INCRccc job will wait for an unavailable data set.
Note:
This optional parameter is not normally specified. The system default is adequate for most data centers.
Internal Step Restart and Incremental Update facilities use z/OS dynamic allocation services to create new data sets and to access existing data sets. Data set naming conventions and internal program structure are designed to minimize data set contention. However, if data set allocation does fail because another batch job or online user is already using a data set, DAILY and/or INCRccc processing will wait 15 seconds and then try the allocation again. By default, the allocation will be attempted every 15 seconds for up to 15 minutes. After 15 minutes, the DAILY or INCRccc job will abort.
If data set contention in your data center does cause frequent DAILY or INCRccc job failures, and you are unable to resolve the contention through scheduling changes, you may want to use the DYNAMWAIT parameter to increase the maximum number of minutes the DAILY and/or INCRccc jobs will wait for the data set to become available.
On the other hand, if your data center standards require that the DAILY and/or INCRccc jobs fail immediately if required data sets are unavailable, specify the following:
DYNAMWAIT 0
Note:
You can override the DYNAMWAIT parameter at execution-time using the //PARMOVRD facility. For more information about execution-time override of dynamic data set allocation parameters, see the Dynamic Allocation Parameter Overrides (//PARMOVRD) section.
Enable Internal Step Restart
To enable the internal step restart in the
MICS
MQSeries Analyzer, follow these steps:
  1. Edit
    prefix.MICS.PARMS(cccOPS)
    , where (ccc) is the component identifier, and specify:
    RESTART YES
    For more details, review the documentation for this product on WORK, RESTARTWORK, and RESTARTCKPT parameters to override default data set allocation parameters.
  2. Submit the job in
    prefix.MICS.CNTL(cccPGEN)
    .
  3. Edit
    prefix.MICS.PARMS(JCLGENU)
    so that it contains a single line that reads:
    DAILY
    or, if incremental update is enabled for this product in this unit database, specify:
    DAILY INCRccc
    where
    ccc
    is the product ID
  4. Submit the job in
    prefix.MICS.CNTL(JCLGENU)
    . Ensure that:
    • there are no error messages in MICSLOG or SYSTSPRT.
    • the MICSLOG contains the normal termination message, BAS10999I.
    • the job completes with a condition code of zero.
  5. The following operational job(s) have changed:
    • DAILY
    • INCRccc (if incremental update is enabled)
    If your site implemented the operational
    MICS
    processes in a scheduling product, refresh the JCL in that product. See the scheduling product administrator for the exact processes that are involved in updating that product representation of the
    MICS
    jobs.