OPTION statement

An OPTION statement can be specified following a PROC statement or a DATABASE statement.

Explicitly specified keyword values and default option values in an OPTION statement that follows a PROC statement specify the options for the entire database to be processed.

Explicitly specified keyword values in an OPTION statement that follows a DATABASE statement override a previously specified option of an OPTION statement that follows a PROC statement. These override options affect only one database data set group in a preceding DATABASE statement.

Subsections:

Syntax

The following syntax diagram shows the keywords for the OPTION statement.

Read syntax diagramSkip visual syntax diagramOPTION,Optional keyword [A]Optional keyword [B]
Optional keywords [A]
Read syntax diagramSkip visual syntax diagram ERRLIMIT=YESNODIAGDUMP=ERRORNOFIRST100DUMPFORM=FORMATUNFORMATDSSIZE=( nnnn(.n)S) HISTORY=NOYESKEYSIN=NOYESHOMECHK=(YES,-10,+10)(YES,- mmm,+ nnn)NOINTERVAL=DATASETBITMAP(BLOCK, nn)ICUNIT= unit nameINCORE=YESNO
Optional keywords [B]
Read syntax diagramSkip visual syntax diagram VSAMBF= nnnnnIBUFF=0nnnnT2CHK=(0,7)( T2num, T2len)ZEROCTR=NOYESSPIXCHK=YESNOPTRCHK=YESNODIAG=NOYESPRINTDATA=NOYESNOCHKP=(,HFHBPTFPTBPPLTFLTBLPLCPCRAPVLS)SPMN=NOYESTHRESHOLDS=keyword= value(,keyword= value)

Keywords

The following keywords can be specified on the OPTION statement:

ERRLIMIT=
Specifies whether to limit the number of database error messages that will be printed during the SCAN or CHECK processes. It is effective only for HDAM, HIDAM, PHDAM, and PHIDAM databases.
This option can be specified when TYPE=ALL, SCAN, or CHECK is specified in the PROC statement. If this option is specified with TYPE=SCAN, this option is passed to the CHECK process for the database data set that will run as another job. If this option is specified with TYPE=CHECK, this option is effective during the CHECK process.
YES
The number of printed database error messages is limited to 100 in each of the SCAN process and CHECK process. ERRLIMIT=YES is the default value.
NO
All database error messages are printed.
DIAGDUMP=
Specifies whether to print the block maps and dumps for the database blocks.

The format of the dump is specified by the DUMPFORM parameter of the OPTION statement.

This option can be specified with any TYPE= specification. It is effective only for HDAM and HIDAM databases.

Abbreviations DDUMP for DIAGDUMP, and F100 for FIRST100 can be used.
NO
No block map and dump are printed for the database data set.
ERROR
A block map and dump for a database data set block having an error is printed.

A maximum of 100 maps and dumps reports will be printed for each database data set through the HD Pointer Checker run. If ERRLIMIT=YES is specified and the total number of error messages for the data set reaches 100, the block map and dump function for the data set is suppressed, even if the number of maps and dumps reports does not reach to 100. DIAGDUMP=ERROR is the default value.

FIRST100
Block maps and dumps of the first 100 blocks, except the first IMS control block and bitmap blocks for the database data set, are printed unconditionally. This option is effective only with TYPE=ALL and SCAN. If this option is specified with TYPE=CHECK or BLKMAP, ERROR parameter is used to override this parameter.
DUMPFORM=
Specifies the dump format you want to print block dumps with.

This option can be specified when DIAGDUMP=ERROR or FIRST100 is specified in the OPTION statement, or the BLOCKDUMP parameter is specified in the DATABASE statement. This option can be specified with any TYPE specification.

Abbreviations DF, DUMPF, and DFORM for DUMPFORM, UF and UNFMT for UNFORMAT, and F and FMT for FORMAT can be used.
FORMAT
Specifies the formatted dumps to be printed. DUMPFORM=FORMAT is the default value.
UNFORMAT
Specifies the unformatted dumps to be printed.
DSSIZE=
This parameter is used in conjunction with dynamic space allocation for the work data sets. This parameter is effective only when WKDATACLASS=*NO, WKSTORCLASS=*NO, and WKHLQ=*NO are applied to the job.

If the OPTION statement follows the DATABASE statement, specify the total of the database data set sizes in the DATABASE statement.

If the OPTION statement follows the PROC statement, specify the maximum size for database data sets of all sizes.

Example 1
If HDAMDD1 is 1 GB and HDAMDD2 is 2 GB, specify as follows:
PROC TYPE=ALL
DATABASE DB=HDAM1,DD=(HDAMDD1,HDAMDD2)
OPTION DSSIZE=3G
Example 2

If all of the following conditions are true, specify as shown in this example.

  • HDAMDD1 is less than 2G
  • The sum of HIDAMDD1 and HIDAMDD2 is 2G
  • The sum of the data sets of HALDB1 is less than 2G
PROC TYPE=ALL
OPTION DSSIZE=2G
DATABASE DB=HDAM1,DD=HDAMDD1
DATABASE DB=HIDAM1,DD=(HIDAMDD1,HIDAMDD2)
DATABASE DB=HALDB1,PART=*ALL,DD=*ALL
Attention: In example 2, the sizes of HDAM1 and HALDB1 are assumed to be 2 G each. Therefore, IMS HP Pointer Checker prepares the work data sets for a total size of 6 G. This might waste too much DASD space. We recommend that you specify the DSSIZE values after each DATABASE statement.

The override convention for the DSSIZE parameter follows the established protocol for the parameters in the OPTION statement. The parameters in an OPTION statement which follows a DATABASE statement override the parameters in any OPTION statement that follows the PROC statement.

If the input data set is a tape Image Copy, specify the original database data set size for the DSSIZE parameter.

If no DSSIZE parameter is provided and the database data set or image copy data set is on DASD, HD Pointer Checker estimates the space requirements for work data sets on the basis of the database data set or image copy data set size found in the VSAM catalog or in the DSCB in the VTOC. If the image copy data set is on tape, the data set labels contains no size information. Then for a tape data set HD Pointer Checker uses one of the following as the default size:

  • If the input data set is a tape Image Copy of the index database data set, the default size is 1 GB.
  • If the input data set is a tape Image Copy of data set other than the index database data set, the default size is 4 GB.
nnnn or nnnn.n
The size can be specified either as a 1-4 digit integer value or as a decimal value with a maximum of one decimal position.

The maximum value of nnnn.n is dependent on the scale factor.

  • For K, M, or G scales, the maximum value is 9999.9
  • For X scales, the maximum value is 9.9
S
The scale value can be represented by one of the following characters:
K
Kilobytes: The size value is 1000 times nnnn.n
M
Megabytes: The size value is 1,000,000 times nnnn.n
G
Gigabytes: The size value is 1,000,000,000 times n.n
X
Times: The size value is n.n times the default or calculated value.

Use the X option when the dynamic allocation of a data set is too small, resulting in frequent reallocation and restart.

The size of the work data set is adjusted by use of the primary quantity and the secondary quantity for allocation. For each of these, specify the value one-tenth the size of the estimated total. For example, if DSSIZE is 4 GB, the primary quantity has the ability to process 400 MB. The work data set will reach the estimated size of 4 GB after allocation is done 10 times.

The size of each primary and secondary quantity is given in an FABP1101I message in the PROCCTL Statement report or the DMB Directory report.

The SORTWKnn, SRTXWKnn, and SRTEWKnn data sets are allocated dynamically by the DFSORT program, and so the size of these work data sets are not controlled by the DSSIZE parameter.

HISTORY=
Specifies whether to update the HISTORY data set for the database data sets to be analyzed. When HISTORY=YES is specified, the HISTORY data set is required.

If the multiple entries option of the HISTORY data set is active, one or more database data set records are recorded per day. For more information about the multiple entries option, see the description of the MULTIENT keyword in OPTION control statement.

This option can be specified when TYPE=ALL or SCAN is specified.

This option cannot be specified when the following parameters are effective:

  • On the DATABASE statement:
    • BLOCKDUMP parameter
  • On the OPTION statement:
    • HOMECHK=NO
    • NOCHKP parameter

An abbreviation HIST can be used for HISTORY.

YES
The HISTORY data set for the database data sets to be analyzed is updated.
NO
The HISTORY data set is not updated. HISTORY=NO is the default value.
Serialization of HISTORY data sets
The HD Pointer Checker jobs are serialized to update the HISTORY data sets by using the ENQ macro. The RNAME parameter of the macro depends on the HISTORY lock option. The HISTORY lock option is set by the HISTLOCK parameter of the FABGHIST program of DB Historical Data Analyzer.

For details of the HISTLOCK option, see the description of HISTLOCK keyword in OPTION control statement.

KEYSIN=
Specifies whether to write the KEYSIN data set. This data set is used as the input to HD Tuning Aid.
This option can be specified when TYPE=ALL or SCAN is specified. It is effective only for HDAM, HIDAM, PHDAM, or PHIDAM databases.
YES
The KEYSIN data set is generated.
NO
The KEYSIN data set is not generated. KEYSIN=NO is the default value.
HOMECHK=
Specifies whether to print the DISTRIBUTION OF ROOT SEGMENTS part in the DB Record Distribution Statistics report. It is printed for HDAM or PHDAM, and only for the data set group that contains root segments.
This option can be specified when TYPE=ALL or SCAN is specified. This option is effective when REPORT DBDIST=YES is specified (default value for DBDIST). When HOMECHK=NO is specified, HISTORY=YES cannot be specified.
(YES,-mmm,+nnn)
The DISTRIBUTION OF ROOT SEGMENTS part is printed. YES is the default value. If YES, mmm is the backward distance from the Home Block (1 - 999) and nnn is the forward distance from the Home Block (1 - 999). The sign "+" can be omitted. The default value is (YES,-10,+10).
NO
The DISTRIBUTION OF ROOT SEGMENTS part is not printed.
INTERVAL=
Specifies whether to define the interval at which the Interval Statistics report and the Interval Free Space Summary report are produced.

This option can be specified when TYPE=ALL or SCAN is specified on the PROC statement, and when INTFS=YES or INTST=YES is specified on the REPORT statement. It is effective only for HDAM, HIDAM, PHDAM, or PHIDAM databases.

Abbreviations DS for DATASET, BM, BITM, and BMAP for BITMAP, and BLK for BLOCK can be used.
DATASET
The reports are produced for the entire database data set only once. INTERVAL=DATASET is the default value.
BITMAP
The reports are produced each time a bitmap block is processed.
(BLOCK,nn)
The number times 100 is the number of blocks that is processed between statistics interval. To code this field, you must include two decimal digits. Use leading zeros, if necessary.
ICUNIT=
Specifies the name of the unit in which the image copy data set resides, if the uncataloged image copy data set is to be allocated dynamically. This option can be specified when TYPE=ALL or SCAN is specified.

This option is referred to only when ddname DD of the image copy data set is omitted from the JCL, and NOCATDS is specified in the RECON data set.

For details, refer to Dynamic allocation of database data sets and image copy data sets.

INCORE=
Specifies whether you use the in-core pointer checking where possible, or you postpone the pointer checking until the CHECK process is run. With the in-core checking option, pointers are checked as many times as possible in the SCAN process. This minimizes the CPU, I/O, and the run time used by HD Pointer Checker.

The pointers that are not checked by using the in-core checking are checked in the CHECK process. The CHECKREC data set used input for CHECK process and the BLOCKMAP process does not contain the sorted records for the pointers that were checked with the in-core checking.

If this run finds some unexpected pointer errors, the listing produced by the BLOCKMAP process might be incomplete.

If the BLOCKMAP processor runs as a separate job or a job step that uses the BLKMAPIN and CHECKREC data set as input, the pointers that were checked with the in-core checking option are not listed.

This option can be specified when TYPE=ALL or SCAN is specified. It is effective for HDAM, HIDAM, PHDAM, or PHIDAM databases. When the HASH option is effective, INCORE=NO is forced.
YES
The in-core pointer checking is used where possible. INCORE=YES is the default value.
NO
The in-core pointer checking is not used.
VSAMBF=
Specifies the number of I/O buffers that VSAM is to use for the data records of VSAM database data sets and encrypted OSAM database data sets. The maximum value is 99999, and the minimum is 1.

If no AMP parameter or IBUFF keyword is specified in a DD statement, the buffers specified with this operand apply to all the VSAM database data sets and encrypted OSAM database data sets. Those buffers are obtained when the data set is opened and freed when it is closed. The total number of buffers depends on the block size of the database data set. If you do not specify this parameter or the AMP parameter, HD Pointer Checker uses the IBUFF keyword by default. The AMP parameter is substituted for the IBUFF and the VSAMBF keyword. If both VSAMBF and IBUFF keywords are specified, the value of IBUFF keyword is used. This option can be used only with the TYPE=ALL and SCAN parameters and is effective only for VSAM database data sets and encrypted OSAM database data sets.

Be careful when specifying this parameter because:

  • The region size will increase when buffer space is specified.
  • An excessive number of buffers might cause an open error for the database data set.
IBUFF=
Specifies the size, in kilobytes, of the I/O buffer area for an input database data set or image copy data set. The maximum value is 9999, and the minimum is 0. However, the maximum number of buffers in a non-VSAM data set is 255. Thus the buffer sizes can actually range up to 255 times the size of a block.

The default size for OSAM, VSAM, and the image copy data set on DASD is an equivalent size of 10 tracks on DASD space. The default size for an image copy data set on tape is 640 KB. If 0 is specified, or no value is specified, the default is assumed. If BUFNO in DCB, or BUFND in AMP, is specified on the database DD statement in the JCL, the IBUFF option is ignored.

For an indirect list data set (ILDS) of HALDB, the IBUFF option does not apply. HD Pointer Checker uses 100 buffers for an ILDS unless BUFND in AMP is specified on the JCL DD statement.

This option can be used only with the TYPE=ALL and SCAN parameters.

T2CHK=
Specifies the two threshold values that will define how the slack bytes or unknown data is treated as T2 records.
This option can be specified when TYPE=ALL or SCAN is specified.
T2num
Specifies the maximum number of T2 records (whose length is more than T2len) that are ignored (suppressed) and not considered to be errors. If the number of generated T2 records exceeds the threshold value, all T2 records are considered to be errors. The maximum value is 99 and the minimum value is 0. The default value is 0.

This option is effective only for HISAM, HDAM, HIDAM, PHDAM, or PHIDAM databases.

T2len
Specifies the maximum length of the T2 which is not considered to be an error. The maximum value is 99, and the minimum value is 1. The default value is 7.

This option is effective only for HDAM and HIDAM databases. The value specified for the HISAM database does not cause an error, but is ineffective.

For example, T2CHK=(,3) is equivalent to T2CHK=(0,3). T2CHK=(10,) is equivalent to T2CHK=(10,7). T2CHK=(10) is equivalent to T2CHK=(10,7).

ZEROCTR=
Requests to report the segment that has a counter field with zero value.
You can specify this option when you also specify TYPE=ALL or SCAN. This option is effective only for HDAM, HIDAM, PHDAM, or PHIDAM databases. This option is not effective when you specify HASH=YES or HASH=FORCE on the PROC statement.
YES
The segment with zero counter field is reported to the Evaluation of All Pointers to the Same Target report. This option might result in an extremely large report.
NO
The segment with zero counter field is not reported. ZEROCTR=NO is the default value.
SPIXCHK=
Specifies whether to check the suppressed segment by use of the secondary index maintenance exit routine.

This option can be specified when TYPE=ALL or SCAN is specified. It is effective only for the sparse indexing database when the secondary index maintenance exit routine is used.

YES
Suppressed segment check performs using a secondary index maintenance Exit routine. SPIXCHK=YES is the default value.
NO
Suppressed segment check is not performed.
PTRCHK=
Specifies whether to check the pointers.

This option can be specified when TYPE=SCAN is specified.

YES
The pointers are checked. PTRCHK=YES is the default value.
NO
The pointers are not checked. Only database statistics reports are printed.
When INCORE=YES is specified, the incore pointer checking is done even if PTRCHK=NO is specified. The default value of the INCORE option is YES. If you want to suppress the incore pointer checking, specify not only PTRCHK=NO but also INCORE=NO.
DIAG=
This option must be used for debugging purpose only. For details, see HD Pointer Checker options for debugging.
PRINTDATA=
This option must be used for debugging purpose only. For details, see HD Pointer Checker options for debugging.
NOCHKP=
This option must be used for debugging purpose only. For details, see HD Pointer Checker options for debugging.
SPMN=
Specifies whether HD Pointer Checker calls Space Monitor.
YES
HD Pointer Checker calls Space Monitor. Space Monitor monitors the data sets of the databases that are specified by the associated DATABASE statements.

To monitor IMS online full-function databases, specify the TOSI XCF group name on the TOSIXCFGRP= keyword of the PROC statement.

NO
HD Pointer Checker does not call Space Monitor.
THRESHOLDS=
Specifies the threshold values for Space Monitor. You can specify the keyword and its value as a pair. Separate each pair with a comma and enclose the entire specification of the pairs with parentheses.

The following table shows the values you can specify.

Table 1. Keywords and values for the THRESHOLDS parameter
Keyword Value Default value Description
EXTENTS= 0 - 99 or NO 10 Warning threshold value for the number of extents.
FREESPC%= 0 - 100 or NO 10 Warning threshold value for the percentage of free space.
AVAILEXT= 0 - 50 or NO 10 Warning threshold value for the number of available extents.
LASTEXT= YES or NO YES If YES is specified and the data set uses the last extent, a warning message for this data set is shown in the Space Monitor Exception report.
USEDSPC%= 0 - 100 or NO 90 Warning threshold value for the percentage of space used.
VOLEXT= YES or NO YES If YES is specified and not enough space is left on the DASD volume for the data set to extend, a warning message for this data set is shown in the Space Monitor Exception report.
CASPLIT%= 0 - 100 or NO 50 Warning threshold value for the percentage of CA splits.
CISPLIT%= 0 - 100 or NO 50 Warning threshold value for the percentage of CI splits.
REORGINTVL= 0 - 999 or NO NO Warning threshold value for the number of days that can pass without a database reorganization.
DSSIZE%= 0 - 100 or NO 90 Warning threshold value for the percentage of the space used by data sets within the maximum size.
DSSIZE= 0 - 9999 or NO NO Warning threshold value for the data set size in the units of MB.