SYSUT1 data sets
For a two-phase table space or index reorganization, REORG PLUS uses the SYSUT1 data set to pass information between the UNLOAD and RELOAD phases. For a single-phase index reorganization, REORG PLUS writes information to this data set during the REORG phase for restart purposes only. After building the index, REORG PLUS deallocates the data set to free the device. The following table lists the circumstances under which REORG PLUS requires the SYSUT1 data set.
Reorganization type | SYSUT1 requirement |
---|---|
Single-phase index reorganization when you specify SHRLEVEL REFERENCE or SHRLEVEL CHANGE | Not used References to single-phase reorganizations in this section are for SHRLEVEL NONE only. |
Single-phase index reorganization when you specify SHRLEVEL NONE | Required if you want to be able to restart the job |
Two-phase index reorganization | Required |
LOB table space reorganization | Not used |
For a non-universal table space reorganization where the following types of indexes exist:
| Required |
For a universal table space reorganization | Required |
Methods for allocating SYSUT1 data sets
Use one of the methods described in Methods-for-allocating-copy-and-work-data-sets to allocate your SYSUT1 data sets and determine the appropriate size for the data sets. We recommend that you dynamically allocate your SYSUT1 data sets. If you do not use dynamic allocation, you must specify DD statements in your JCL for the SYSUT1 data sets.
Number of SYSUT1 data sets to allocate
Use the information in the following table to determine how many SYSUT1 data sets to allocate.
Type of reorganization | Number of SYSUT1 data sets |
---|---|
Any table space reorganization | One data set for all indexes or one data set for each participating index |
Two-phase index reorganization | One data set |
Single-phase index reorganization | One data set or no data sets |
Specifying a single SYSUT1 data set
If you want a single work data set for all participating indexes, specify one SYSUT1 DD statement.
Specifying multiple SYSUT1 data sets
When more than one non-data-sorting index exists, you can improve I/O performance by using multiple SYSUT1 data sets. Using multiple data sets allows I/O operations to overlap. For more information about performance and DASD considerations, see SYSUT1 data set.
If you specify more than one SYSUT1 data set, specify a DD statement named SYSUT1nn for each data set. Specifying nn creates a unique ddname; the nn has no relation to the index name.
Note the following additional considerations about the number of work data sets to allocate:
- If you specify more than one SYSUT1 data set, specify one data set for each participating index. When determining how many data sets to allocate, consider the following information:
- When reorganizing a base table space that contains an XML column, ensure that you include a data set for the document ID index.
- When reorganizing an XML table space, ensure that you include a data set for the node ID index.
- When reorganizing a LOB table space, you do not need to include a data set for the auxiliary index.
- If you are reorganizing a table space with a large number of indexes, we recommend that you specify a single SYSUT1 data set to avoid data set allocation limitations of the operating system.
Dynamically allocating SYSUT1 data sets
REORG PLUS uses information from the ANALYZE phase to analyze the requirements for the current execution and calculates the optimal file size and number of files to allocate.
The following additional information applies when dynamically allocating SYSUT1 data sets:
- REORG PLUS deletes the SYSUT1 data sets when you specify DELETEFILES YES and the reorganization ends successfully.
- If you plan to have REORG PLUS allocate more than 99 SYSUT1 data sets, use the WORKDDN option to specify a ddname prefix that results in eight characters or less after REORG PLUS appends the highest data set number.
Allocating SYSUT1 data sets in your JCL
Note the following considerations for allocating SYSUT1 data sets:
- To avoid a failure in the RELOAD phase, do not specify DD DUMMY or DSN=NULLFILE for SYSUT1 data sets when running REORG PLUS in WARN mode.
- To enable REORG PLUS to restart any time after the UNLOAD phase for a two-phase reorganization, the SYSUT1 cannot be a temporary data set. For information about how REORG PLUS defines temporary data sets, see Work-file-validity-and-integrity-checks.
- For multiple reorganizations running in a worklist environment (through DASD MANAGER PLUS, Change Manager, or Catalog Manager), do not use SMS extended sequential data sets as SYSUT1 data sets. When REORG PLUS first uses a data set, it defines the data set’s DCB attributes. With an SMS extended sequential data set, once these attributes are defined, they cannot be changed. If this data set is reused, as with multiple reorganizations in a worklist environment, it can require different DCB attribute values, such as different block sizes or record lengths. REORG PLUS attempts to redefine the attributes if necessary. However, because MVS does not allow changes to these attributes after the file has been opened, REORG PLUS fails.
When using multiple SYSUT1 data sets, REORG PLUS assigns the index with the largest key length to the first SYSUT1 DD statement in the JCL, the index with the second-largest key length to the second SYSUT1 DD statement, and so on. This assignment of indexes to data sets by key length can assist you in allocating the sizes of your data sets and allows you to place data sets on different devices when needed.
Due to this assignment, you should allocate the space for the participating index with the largest key length in the first SYSUT1 DD statement in your JCL, space for the index with the second-largest key length in the second SYSUT1 DD statement, and so on.