This document describes Adabas sequential files.
This section summarizes the sequential files used by the Adabas utilities. Explanations of the table heading and contents are in the text following the table.
Utility | File Name | Out | In | BLKSIZE by device |
Concatenation |
---|---|---|---|---|---|
ADACDC | DDSIIN | x | Yes | ||
ADACHK | DDFEHL | x | Yes | ||
ADACMP | DDAUSBA DDEBAND DDFEHL |
x x |
x | Yes | |
ADACNV | DDFILEA | x | |||
ADALOD | DDEBAND DDFILEA DDISN DD/OLD |
x x |
x x x |
Yes | Yes Yes |
ADAMER | DDEBAND | x | |||
ADAORD | DDFILEA | x | x | Yes | |
ADAPLP | DD/PLOG | x | Yes | ||
ADARAI | DDOUT | x | |||
ADAREP | DDSAVE DDPLOG |
x x |
Yes Yes |
||
ADARES | DDBACK DDSIAUS1 DDSIAUS2 DDSIIN |
x x |
x x |
Yes Yes |
|
ADASAV | DDDEL1 DDDEL2 DDDEL3 DDDEL4 |
x x x x |
Yes Yes Yes Yes |
||
DDDEL5 DDDEL6 DDDEL7 DDDEL8 |
x x x x |
Yes Yes Yes Yes |
|||
DDDUAL1 DDDUAL2 DDDUAL3 DDDUAL4 |
x x x x |
||||
DDDUAL5 DDDUAL6 DDDUAL7 DDDUAL8 |
x x x x |
||||
DDFULL DDPLOG |
x x |
Yes Yes |
|||
DDREST1 DDREST2 DDREST3 DDREST4 |
x x x x |
Yes | |||
DDREST5 DDREST6 DDREST7 DDREST8 |
x x x x |
||||
DDSAVE1 DDSAVE2 DDSAVE3 DDSAVE4 |
x x x x |
||||
DDSAVE5 DDSAVE6 DDSAVE7 DDSAVE8 |
x x x x |
||||
ADASEL | DDEXPA1 DDEXPA2 DDEXPA3 DDEXPA4 |
x x x x |
|||
DDEXPA5 DDEXPA6 DDEXPA7 DDEXPA8 |
x x x x |
||||
DDEXPA9 DDEXPA10 DDEXPA11 DDEXPA12 |
x x x x |
||||
DDEXPA13 DDEXPA14 DDEXPA15 DDEXPA16 |
x x x x |
||||
DDEXPA17 DDEXPA18 DDEXPA19 DDEXPA20 |
x x x x |
||||
DDSIIN | x | Yes | |||
DDEBAND | x | No | |||
DDSAVE | x | No | |||
ADAULD | DDOUT1 DDOUT2 DDISN DDSAVE DDPLOG DDFULL DDDEL1-8 |
x x x |
x x x x |
Yes Yes Yes |
Yes Yes Yes Yes |
Files that are both output and input are first written and then read by the indicated program.
To allow utilities to access data set information after closing, the DD statement for sequential data sets used in utilities should not contain FREE=CLOSE.
The BLKSIZE of a sequential file is determined as follows:
If the column, "BLKSIZE by device" specifies "Yes" for a file, the default BLKSIZE depends on the device type as follows:
Tape: | up to 256K |
3380 disk: | 23476 |
3390 disk: | 27998 |
If the column "BLKSIZE by device" does not specify "Yes" for a file, the file's BLKSIZE is obtained from the DD statement or data set label, if present. It must be present for any input file.
If the column "BLKSIZE by device" does not specify "Yes" for a file and the BLKSIZE cannot be obtained from the DD statement or data set label, the value of the ADARUN QBLKSIZE parameter is used, if specified.
Except for ADACMP EBAND, the RECFM and LRECL of all sequential files are VB and BLKSIZE-4, respectively. For ADACMP EBAND, RECFM and LRECL must be available from the DD statement and/or data set label.
If the DCB BUFNO parameter is provided on the DD statement, it will be used.
If the DCB BUFNO parameter is not provided on the DD statement, 40 buffers are allocated for disk and tape datasets with a block size of less than 64K, and 10 buffers are allocated for tape datasets with a block size of 64K or larger.
Various enhancements to the processing of TEMP and SORT datasets are now available in utilities ADAINV, ADALOD and ADAULD. Similar enhancements are already available for use by the ADACHK utility.
Allow SORT and TEMP to be dynamically extended when full.
Support writing to SORT and TEMP even though the datasets have not been pre-formatted (e.g. via ADAFRM).
Support temporary dataset usage for TEMP and SORT, e.g.:
//DDTEMPR1 DD DSN=&&TEMP,DISP=(NEW,DELETE), // SPACE=(CYL,(100,100)),VOL=(,,,10) //DDSORTR1 DD DSN=&&SORT,DISP=NEW, // SPACE=(CYL,(100,100)),RECFM=F,BLKSIZE=8904
The TEMPSIZE and SORTSIZE parameters, which were previously mandatory, are now optional parameters.
If TEMPSIZE/SORTSIZE is specified, the utility will process TEMP/SORT in the same way as in previous versions, i.e. pre-formatting of TEMP/SORT is required and dynamically extending the dataset is not available.
By omitting the TEMPSIZE/SORTSIZE parameter, users can take advantage of the enhancements listed above.
When TEMPSIZE/SORTSIZE is omitted, the user can either let the utility choose the TEMP/SORT device type (by omitting the TEMPDEV/SORTDEV parameter), or else set the TEMP/SORT device type by specifying TEMPDEV/SORTDEV.
When both TEMPSIZE/SORTSIZE and TEMPDEV/SORTDEV are omitted and TEMP/SORT is unformatted, users can specify the block size to be used for TEMP/SORT via JCL. The sample JCL for DDSORTR1 above provides an example of this. In this case, the block size in the JCL will be used if it matches an Adabas device type. A JCL block size which does not match an Adabas device type is treated as an error. For the list of Adabas device types and corresponding block sizes, see Supported Adabas Device Types.
For processing TEMP/SORT datasets which are not pre-formatted, Software AG recommends omitting both TEMPSIZE/SORTSIZE and TEMPDEV/SORTDEV, and not specifying a block size via JCL. The utility will then select an optimum block size.
When both TEMPSIZE/SORTSIZE and TEMPDEV/SORTDEV are omitted and TEMP/SORT is pre-formatted, the utility retains the block size of the existing dataset.
Note that it is still possible for TEMP/SORT to fill up. Users should define TEMP and SORT datasets with secondary extents large enough to hold all required data.
In general, TEMP must be large enough to accommodate all descriptor values to be loaded into the Normal Index, and SORT must be large enough for twice the largest size of all values for any one descriptor to be sorted.
See the , and Utilities documentation for further guidance on the size requirements for TEMP/SORT datasets.