When you want to upgrade a database from Version 3, 5, 6.1 or 6.2 to Version 6.3, you have two options:
Create a new Version 6.3 database, and copy the data of the old database into the new database using ADABCK RESTORE or ADAORD IMPORT. In this case, the database conversion is done by ADABCK or ADAORD.
Use the utility ADACVT to convert an existing database in place. The conversion using ADACVT is described in the following.
The conversion utility ADACVT is used to convert the structure of a database from Version 3, Version 5, Version 6.1 or Version 6.2 to Version 6.3. Once the database has been converted, the utility writes a SYNP checkpoint.
When converting a database, the nucleus must not be active or have an AUTORESTART pending. Furthermore, there must be no pending utility entries in the utility control block (UCB).
It is strongly recommended to dump the database using the backup utility ADABCK before the conversion. It is also recommended to check the consistency of the database using ADAVFY'S FIELD and INDEX functions. This can be done either before or after dumping the database.
The utility performs several I/Os and calls some other utilities. The time required for ADACVT to perform the conversion depends on the size of the index for files that have ISNSIZE of 2.
The utility will be able to restart after a crash in most cases. If the utility cannot restart after a crash, restore the original database from the backup and run the utility again.
This utility is a single-function utility.
The following topics are covered:
ADACVT increases the structure level in the General Control Block (GCB).
ADACVT decreases the structure level in the General Control Block (GCB).
ADACVT checks to see if the new features (field options TS, SY)) are in use. If they are in use, backward conversion to Version 6.1 is not possible; if they are not in use, ADACVT decreases the structure level in the General Control Block (GCB) and changes the FDT back to the Version 6.1 structure (without the FDT update time stamp).
ADACVT increases the structure level in the General Control Block (GCB).
ADACVT checks to see if the new features (field options TS, SY) are in use. If they are in use, backward conversion to Version 5.1 is not possible; if they are not in use, ADACVT decreases the structure level in the General Control Block (GCB) and changes the FDT back to the Version 5.1 structure (without the FDT update time stamp)..
ADACVT increases the structure level in the General Control Block (GCB).
It is not possible to convert a Version 6.3 database back to Version 3 with ADACVT.
If you want to access database files with Version 3.3 again, you must first unload and decompress the files with the Version 6.3 utilities ADAULD and ADADCU, then compress and load them with the Version 3.3 utilities ADAFDU, ADACMP and ADAMUP.
During a conversion from Version 3 to Version 6.3, the content of the checkpoint file is deleted.
During a conversion between Version 5 and Version 6.3, a SYNP checkpoint is written.
DBID=number
This parameter selects the database to be converted.
CONVERT=keyword
This parameter specifies the structure of the destination version. 'keyword' defines the destination version and can take the following values:
Converts a database from Version 6.3 to Version 5.1.
Converts a database from Version 6.3 to Version 6.1.
Converts a database from Version 6.3 to Version 6.2.
Converts a database from Version 3, Version 5, Version 6.1 or Version 6.2 to Version 6.3.
ACNSP | No space for new address converter, need 'number' blocks ('number'KB) |
Explanation |
There is no more ASSO space for building the new Address Converter. The message shows the total amount of space needed by the AC_CONVERT function. |
Action |
Calculate free ASSO space in database and see how much missing. Then add a new ASSO container with sufficient space with ADADBM ADD_CONTAINER or check if you can use ADADBM DEALLOCATE. Alternatively, you can increase the ASSO container by using ADADBM with the EXTEND_CONTAINER parameter. |
ADA245 | pending utility entries in UCB |
Explanation |
The UCB contains entries which indicate that one or more files or the database is locked. |
Action |
Check the reason for these UCB entries. |
CVDBS | database 'number' at unexpected structure level ('number') |
Explanation |
The current database is not a Version 3 or Version 5 database. |
Action |
None: ADACVT cannot be used to convert unsupported database versions. |
CVINVCV | only conversion to version 'vers' permitted |
Explanation |
Conversion to the destination version is not permitted. Please refer to the CONVERT parameter for information about the conversions that are supported. |
Action |
Use one of the valid keywords. |
CVTFDTTL | Conversion not permitted. FDT too long in file 'fnr'. |
Explanation |
The size of the FDT is larger than the maximum FDT size allowed in the target version of the conversion. Specifically, the FDT may be too large because more than 926 fields have been defined, which was the maximum up to Adabas Version 6.1. |
Action |
Remove all files where the FDT is too large. |
CVTOPTNO | Conversion not permitted. Not supported field definition in file 'fnr', field 'field'. |
Explanation |
ADACVT conversion to an older version is not allowed because of new features used. |
Action |
Remove all files that use new Adabas features. |
CVTREFNO | Conversion not permitted. Referential integrity in the file 'fnr'. |
Explanation |
ADACVT conversion to an older version is not allowed because referential integrity is not supported in that version. |
Action |
Drop all referential integrity constraints. |
NOTPOSS | database 'number' not converted to version 'number' |
Explanation |
The conversion failed. The reason for this has been explained in a previous message. |
Action |
This depends on the reason why the conversion failed. See the corresponding message. |
REQLEV | database 'number' already at structure level for version 'vers' |
Explanation |
The database is already at the requested level. |
Action |
None. |
STARTERR | Starting 'utility name' failed |
Explanation |
The given utility could not be started. |
Action |
This is an informational message. The reason why the utility could not be started is given in subsequent error messages. |