Limited supportBMC provides limited support for this version of the product. As a result, BMC no longer accepts comments in this space. If you encounter problems with the product version or the space, contact BMC Support.BMC recommends upgrading to the latest version of the product. To see documentation for that version, see CHECK PLUS for DB2 13.1.

CHECK PLUS DD statements


CHECK PLUS uses data sets that are specified by ddnames. The use of these data sets is optional unless specified otherwise. This section provides specification guidelines, allocation information, and usage notes for each of the data sets that CHECK PLUS uses. Use the table to quickly find the data set for which you want more information.

ddname descriptions

Data set type  

Description reference

Default ddname

ddname command option

Command input

SYSIN

NA

Discard

SYSDISC

Error

SYSERR

Message output 

SYSPRINT

NA

Other

NA

NA

Sort message output indicator

UTPRINT

NA

Sort work

SORTWK

NA

 

SORTWK data sets

SORTWK data sets are the work files that BMCSORT uses. BMCSORT uses the data sets in the CHECK phase, and uses them only for CHECK INDEX level 2 processing and CHECK DATA processing.

For any job in which CHECK PLUS performs a sort, you must allocate SORTWK files in one of the following ways:

  • (Recommended) Have BMCSORT dynamically allocate SORTWK data sets. For more information, see Dynamically allocating SORTWK data sets.
  • Explicitly specify SORTWK DD statements in your JCL. Use this option when you want to control the allocation of your SORTWK data sets. For more information, see Allocating SORTWK data sets in your JCL.

Dynamically allocating SORTWK data sets

BMCSORT dynamically allocates SORTWK data sets if they are not already allocated explicitly in your JCL (or if it needs more SORTWK data sets than you have allocated) and you have enabled dynamic allocation in BMCSORT. BMC recommends that you specify SORTNUM 32. However, CHECK PLUS does not know how much space BMCSORT allocates. Therefore, the job can fail in the CHECK phase if BMCSORT cannot dynamically allocate enough space.

Allocating SORTWK data sets in your JCL

If you cannot dynamically allocate SORTWK data sets, you must specify SORTWK DD statements in your JCL. The number of SORTWK files should be evenly divisible by the number of tasks, with a minimum of two sort work files per task. Available resources might limit the number of concurrent tasks to four; therefore, if you allocate 12 SORTWK data sets, CHECK PLUS can run up to four tasks without wasting sort space.

SORTWK size for CHECK INDEX processing

To determine the SORTWK data set size for CHECK INDEX level 2 processing, use the following formula for each table:

#rows*(sum of lengths of all key columns + 13)

  Use the following formula for each index:

#keys*(key length + 13)

Add all of these values and multiply by 1.2. This is the total amount of sort work space you will need. Divide this value by the number of SORTWK files and round up to the nearest cylinder boundary.

SORTWK size for CHECK DATA processing

To determine the total SORTWK data set size for CHECK DATA processing, calculate the value, divide by the number of SORTWK files, and then round up to the nearest cylinder boundary:

2.4 *(# foreign keys * (longest foreign key length + 13))


Important

When determining the number of concurrent tasks to run, CHECK PLUS checks the amount of allocated SORTWK space. In these calculations, CHECK PLUS uses only the primary allocation because the secondary allocation is not guaranteed.

Restrictions

You cannot allocate a SORTWK data set as any of the following data set types:

  • VIO data set
  • Tape data set
  • Multi-volume data set
  • Data set in an SMS storage group that specifies EXTENDED FORMAT YES

BMCSORT does not support SORTWK data sets that extend beyond 65,535 tracks on a single volume.

SYSDISC data set

CHECK PLUS always requires a SYSDISC data set. CHECK PLUS writes the distinct foreign keys in RI violation to this data set during the FIX RI phase. To override the default ddname SYSDISC, use the DISCARDDN option.

Important

The SYSDISC data set is not used for recording table check constraint violations.

For details about specifying the format of the SYSDISC data set, see the description for the DISCARDFMT option on. For information about using the CHECK PLUS provided program (ACKESQL) to execute the SQL DELETE statements in this data set, see SQL batch execution program.

SYSERR data set

CHECK PLUS always requires a SYSERR data set for CHECK DATA processing. CHECK PLUS uses this work data set for error processing in the CHECK and FIX RI phases. To override the default ddname SYSERR, use the ERRDDN option.  

SYSIN data set

CHECK PLUS always requires a SYSIN data set. This input data set contains the CHECK command. The UTILINIT phase reads, parses, and verifies the CHECK command that is provided in this data set. You must specify the attributes of this data set as fixed length (RECFM is F, FB, or FBS), and the record length must be 80 columns (LRECL=80). CHECK PLUS uses only columns 1 through 72.

SYSPRINT data set

CHECK PLUS always requires a SYSPRINT data set. This output data set contains CHECK PLUS messages.

Important

We recommend that you do not depend on the content and format of this data set (for example, as input to user-defined processes). Message content and format are subject to change without notice.

CHECK PLUS overrides any data control block attributes that you specify in your JCL with DCB=(RECFM=VBA,LRECL=137,BLKSIZE=141).

Note the considerations if you direct SYSPRINT to a tape or disk data set:

  • The DSN messages from Db2, such as those from a QUIESCE utility, are lost.
  • We recommend that you do not specify the BUFNO parameter on the DD statement for this data set.

For information about the level of messages that CHECK PLUS displays and how to change the message level, see Message level (MSGLEVEL).

UTPRINT data set

CHECK PLUS always requires a UTPRINT data set if sorting is necessary. The presence of this data set tells CHECK PLUS to report sort messages. However, the actual messages for each sort process appear in separate SYSnnnnn data sets, where nnnnn is a system-assigned sequential number. You cannot specify a sequential or partitioned data set for UTPRINT. UTPRINT supports only SYSOUT data sets.

Warning

JES3 users should be aware of a limitation within JES3 that does not allow concurrent tasks to share SYSOUT data sets. (See IBM APAR OY23946 for a full description of this limitation.) This limitation means that you cannot use additional sort routine reporting DDs (other than UTPRINT) if they are defined as JES3 SYSOUT data sets and when CHECK PLUS is multitasking its sort activity. If you attempt to use a nonsupported DD, you risk S1FB abends when concurrent sort tasks are running. JES3 version 4.2.1 users should also refer to IBM APARs OW00111 and OY63725.

Other data sets

Because it uses BMCSORT, CHECK PLUS ignores any traditional sort routine DD statements (such as $ORTPARM and DFSPARM) that you specify.


 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*