The REORFDATA function reorders Data Storage for a single file. Data Storage for unspecified files is not reordered.
The REORFDATA function does not reorder ADAM files. However, it can be used to relocate an ADAM file to different RABNs.
This function requires exclusive EXU control of the database files involved in the operation. In addition, parts of the database are overwritten during ADAORD execution, so we recommend that you back up the database (or file) using the ADASAV utility first, before running ADAORD functions.
This is the syntax of the ADAORD REORFDATA function:
This document covers the following topics:
FILE specifies the file to be processed, and to which the parameters that follow in the statement sequence apply. Several files and their related parameters may be specified within one REORFDATA operation; see the examples at the end of this section.
ALLOCATION specifies the action to be taken if file extent allocations cannot be obtained according to the placement parameter DSRABN.
By default (that is, ALLOCATION=FORCE), the utility terminates with error if any file extent allocation cannot be met according to RABN placement parameter.
If ALLOCATION=NOFORCE is specified and any allocation with placement parameter fails, the utility retries the allocation without the placement parameter.
DATAPFAC specifies the new Data Storage padding factor, which is the percentage of each Data Storage block reserved for record expansion when the file is reordered. A value in the range 1-90 may be specified (see the ADALOD LOAD DATAPFAC parameter discussion for more information about setting the padding factor). If this parameter is omitted, the current padding factor for the file is used.
Note:
The value for the DATAVOLUME parameter must be enclosed in
apostrophes.
DATAVOLUME specifies the volume on which the file's Data Storage space (DS extents) are allocated. If the number of blocks requested with DSSIZE cannot be found on the specified volume, ADAORD allocates the remaining blocks on other volumes according to its default allocation rules.
If DSRABN is specified, DATAVOLUME is ignored for the related file.
If DATAVOLUME is not specified, the Data Storage space is allocated according to ADAORD's default allocation rules.
DSDEV is the file's Data Storage device type. The specified device type must already be defined to Adabas, normally when the database was created or by the ADADBS utility's ADD function.
If DSDEV is not specified, ADAORD attempts to allocate the file on the device type used before reordering.
DSRABN is the beginning RABN for the file's Data Storage extent. If this parameter is omitted, ADAORD assigns the starting RABN.
Specifying DSRELEASE releases unused Data Storage (DS) blocks belonging to the file. If DSRELEASE is not specified, ADAORD allocates at least the number of DS blocks that were allocated before the file was reordered.
Note:
Adabas calculates the file extent size using any changed padding
factor or block size values before the file is reordered.
DSSIZE specifies the number of blocks or cylinders to be allocated for the Data Storage. A block count must be followed by a "B" (for example, "2000B").
If this parameter is omitted, ADAORD computes the file extent size in proportion to any increase or decrease in the DATAPFAC padding factor.
EXCLUDE lists the numbers of the files to be excluded from REORDER processing; that is, the files that are not to be reordered.
The parameter is optional: if not specified, no files are excluded. A file number may be listed only once.
Files specified in the EXCLUDE parameter must also be specified in the FILE parameter.
The EXCLUDE parameter is provided for use in recovery jobs built by the Adabas Recovery Aid (ADARAI).
The LIP parameter can be used to decrease the number of Associator I/O operations when recreating the address converter. For best performance, specify a size that accepts all ISNs of the largest file to be processed.
LIP specifies the size of the ISN pool for containing ISNs and their assigned Data Storage RABNs. The value may be specified in bytes as a numeric value ("2048") or in kilobytes as a value followed by a "K" ("2K"). The default for LIP is 16384 bytes (or 16K).
The length of one input record is ISNSIZE + RABNSIZE. Thus the entry length is at least 6 bytes (the ISNSIZE of the file is 3 and the RABNSIZE of the database is 3) and at most 8 bytes (the ISNSIZE is 4 and the RABNSIZE is 4).
Note:
When ADAORD is processing files that contain spanned records with
secondary ISNs, a second LIP will be allocated to contain these ISNs.
LPB specifies the size, in bytes, of the internal prefetch buffer. The maximum value is 32,760 bytes. The default depends on the ADARUN LU parameter. ADAORD may reduce a specified LPB value if the LU value is too small.
Use the MAXRECL parameter to change the maximum record length, after compression, permitted in the file. Specifying MAXRECL has two effects:
The DATA data set for the file can be allocated only to devices that support the specified length.
If the file contains Data Storage records that exceed the specified length, ADAORD abends and prints the ERROR-126 message (Data Storage record too long).
If MAXRECL is not specified, the maximum compressed record length does not change.
When a parameter error or a functional error occurs while this utility function is running, the utility ordinarily prints an error message and terminates with user abend 34 (with a dump) or user abend 35 (without a dump). If NOUSERABEND is specified, the utility will not abend after printing the error message. Instead, the message "utility TERMINATED DUE TO ERROR CONDITION" is displayed and the utility terminates with condition code 20.
Note:
When NOUSERABEND is specified, we recommend that it be specified
as the first parameter of the utility function (before all other parameters).
This is necessary to ensure that its parameter error processing occurs
properly.
If the file is password-protected, use this parameter to specify the password.
SORTSEQ determines the sequence in which the file is to be processed. If this parameter is omitted, the records are processed in physical sequence.
If a descriptor is specified, the file is processed in the logical sequence of the descriptor values. Do not use a null-suppressed descriptor field, a hyperdescriptor, a phonetic descriptor, a multiple-value field, or a descriptor contained in a periodic group.
Note:
Even when the descriptor field is not null suppressed, the record
is not represented in the inverted list if the descriptor field or a
field following it has never been initialized (held a value). Therefore, the
record will be dropped when the utility is executed.
If ISN is specified, the file is processed in ascending ISN sequence. For the Adabas checkpoint or security file, only SORTSEQ=ISN is allowed.
This parameter tests the operation syntax without actually performing the operation. Note that the validity of values and variables cannot be tested: only the syntax of the specified parameters can be tested.
ADAORD REORFDATA FILE=16
The Data Storage for file 16 is to be reordered. No other files are affected.
ADAORD REORFDATA FILE=246 ADAORD DATAPFAC=5,DSSIZE=10,SORTSEQ=MZ ADAORD FILE=247
The Data Storage for files 246 and 247 is to be reordered. No other files' Data Storage will be reordered.
For file 246, the Data Storage padding factor is to be set to 5. Data Storage for file 247 is reordered according to the file's existing definition.