This document describes the utility "ADAFRM".
The following topics are covered:
The utility ADAFRM creates the container files (ASSO, DATA, WORK) assigned to the database and establishes the database including the database system files. It can also be used to format the TEMP and SORT files.
For the raw device interface, the utility ADADEV can be used if placement control is required. Raw devices and files in the file system may be used for database container files.
You can create up to 255 ASSO and 255 DATA container files. You can add more containers later using ADADBM's ADD_CONTAINER function.
After ADAFRM creates the container files, it initializes the global Adabas blocks, inserts the 3 Adabas system files (checkpoint file, ET data file, security file) and allocates space for them. The checkpoint file is allocated 3000 records, the ET data file is allocated 3000 records and the security file is allocated 200 records.
Block sizes from 1 kilobyte to 32 kilobytes may be used for database container files.
If you try to reformat a container file, the utility terminates with an error message. This ensures that the database is not accidentally overwritten.
Note:
On OpenVMS, container files are allocated using the
contiguous-best-try method. For this reason, you should ensure that your disk
space is as defragmented as possible in order to avoid reduced performance.
This utility is a single function utility.
If a database is to be formatted:
Data Set | Environment Variable/ Logical Name |
Storage Medium | Additional Information |
---|---|---|---|
Associator | ASSOx | Disk | |
Data storage | DATAx | Disk | |
Control statements | stdin/ SYS$INPUT |
Utilities Manual | |
ADAFRM messages | stdout/ SYS$OUTPUT |
Messages and Codes | |
Work | WORK1 | Disk |
If a TEMP or SORT is to be formatted:
Data Set | Environment Variable/ Logical Name |
Storage Medium | Additional Information |
---|---|---|---|
Sort storage | SORTx | Disk | |
Control statements | stdin/ SYS$INPUT |
Utilities Manual | |
ADAFRM messages | stdout/ SYS$OUTPUT |
Messages and Codes | |
Temporary storage | TEMPx | Disk |
The utility writes no checkpoints.
The following control parameters are only used when establishing a new database:
D ASSOBLOCKSIZE = (number[K] [,number[K]] ... ) M ASSOSIZE = (number[B|M] [,number[B|M]]...) D DATABLOCKSIZE = (number[K] [,number[K]] ... ) M DATASIZE = (number[B|M] [,number[B|M]]...) DBID = number D NAME {=|:} string M SORTSIZE = (number[M] [,number[M]] ... ) D SYSFILES = (number, number, number) M TEMPSIZE = (number[M] [,number[M]] ... ) D WORKBLOCKSIZE = number[K] M WORKSIZE = number[M | B]
ASSOBLOCKSIZE = (number[K] [,number[K]] ... )
This parameter specifies the block sizes that are to be used for the Associator container file(s). The first block size corresponds to ASSO1, the second to ASSO2 etc.
If block sizes are not specified, the default of 4K will be used.
For ASSO1, only blocks sizes from 2K to 8K can be specified. For ASSO2 to ASSOn, block sizes between 1K and 32K are permitted.
Note:
The ASSOBLOCKSIZE parameter should be specified once for each
ASSOSIZE that is specified, i.e. these parameters should be specified in pairs.
If ASSOSIZE is specified more frequently than ASSOBLOCKSIZE, then the last
specified block size will be used for the containers that do not have a block
size specified. The default value will be used if ASSOBLOCKSIZE is not
specified at all.
ASSOSIZE = (number[M|B] [,number[M|B]]...)
This parameter specifies the number of blocks or megabytes to be assigned to the Associator.
If the Associator is to be contained in more than one physical file, the size of each file must be specified.
If a `B' is appended to the number, the size is in blocks, otherwise it is in megabytes.
DATABLOCKSIZE = (number[K] [,number[K]] ... )
This parameter specifies the block sizes that are to be used for the Data Storage container file(s). The first block size corresponds to DATA1, the second to DATA2 etc.
If block sizes are not specified, the default of 32K will be used.
Note:
The DATABLOCKSIZE parameter should be specified once for each
DATASIZE that is specified, i.e. these parameters should be specified in pairs.
If DATASIZE is specified more frequently than DATABLOCKSIZE, then the last
specified block size will be used for the containers that do not have a block
size specified. The default value will be used if DATABLOCKSIZE is not
specified at all.
DATASIZE = (number[B|M] [,number[B|M]]...)
This parameter specifies the number of blocks or megabytes to be assigned to the Data Storage.
If the Data Storage is to be contained in more than one file, the size of each file must be specified.
If a `B' is appended to the number, the size is in blocks, otherwise it is in megabytes.
DBID = number
This parameter selects the database to be created.
The minimum value is 1 and the maximum value is 255.
Note:
This parameter only needs to be set when formatting ASSO, DATA and
WORK. It must not be entered when formatting only SORT or TEMP.
NAME {=|:} string
This parameter specifies the name to be assigned to the database. This name will appear in the title of the database status report produced by the report utility ADAREP. If you specify an equals sign, the value given for 'string' will be converted to upper case; if you specify a colon, no upper-case conversion is performed.
A maximum of 16 characters may be specified.
If this parameter is omitted, a default value of `GENERAL-DATABASE' is assigned.
SORTSIZE = (number[M] [,number[M]] ... )
This parameter specifies the number of megabytes to be assigned to the SORT dataset.
If the SORT dataset consists more than one extent, the size of each extent must be specified. Up to 50 extents can be specified. The SORT dataset can be formatted independently.
SYSFILES = (number, number, number)
This parameter specifies the file numbers to be reserved for the Adabas system files. These file numbers must not be used subsequently for user files.
The first value specifies the file number of the checkpoint file.
The second value specifies the file number of the security file.
The third value specifies the file number of the user data file.
The default setting is SYSFILES=(1, 2, 3).
TEMPSIZE = (number [M] [,number[M]] ... )
This parameter defines the number of megabytes to be assigned to TEMPx.
If the TEMP dataset is to be contained in more than one physical file, the size of each file must be specified.
This component may be formatted independently.
WORKBLOCKSIZE = number[K]
This parameter specifies the block size that is to be used for the WORK file.
If no block size is specified, the default of 16K will be used.
WORKSIZE = number [B|M]
This parameter defines the number of blocks or megabytes to be assigned to WORK1.
If a `B' is appended to the number, the size is in blocks, otherwise it is in megabytes.
ADAFRM does not have a restart capability. An interrupted ADAFRM run must be restarted from the beginning. Associator, Data Storage and WORK must be formatted together.
The files created during an earlier run have to be deleted first.
adafrm: dbid = 1, name = DATABASE_1 adafrm: assosize = (200M, 100M), assoblocksize = (2K, 4K) adafrm: datasize = (500M, 500M, 2M), datablocksize = (4K, 16k) adafrm: worksize = 50M, workblocksize = 16K
A new database is established with the number 1 and the name "DATABASE_1". Two ASSO container files are created: ASSO1 has a size of 200 megabytes and a blocksize of 2 kilobytes, and ASSO2 has a size of 100 megabytes and a blocksize of 4 kilobytes. There are three DATA containers. DATA1 and DATA3 have a blocksize of 4 kilobytes, DATA2 has a blocksize of 16 kilobytes. There is a single WORK container file with a block size of 16 kilobytes. The file numbers 1, 2 and 3 will be used for the 3 system files.
adafrm: sortsize = (10M,10M) adafrm: tempsize = 10M
Explanation: Two container files, each 10 megabytes in length, are to be formatted as SORT1 and SORT2. A container file, 10 megabytes in length, is to be formatted as TEMP1.