Manual CTA Catalogue schema upgrade#
Warning
This is not the recommended way to upgrade the CTA Catalogue schema, given its dependencies and complexity. Please consider the automated procedure, which provides a one-click upgrade solution for the CTA Catalogue schema upgrade.
Prerequisites#
1. Choose a machine to run the upgrade#
Warning
It should not be a production server!
The upgrade should be run from a machine running CERN CentOS 7. It is recommended to run the upgrade from the container provided by the CTA team.
2. Check the required tools are installed#
3. Check the cta-catalogue.conf
file contains the connection string for the database to be upgraded#
This configuration file will be used by the cta-catalogue-schema-verify
command.
Example:
$ cat /etc/cta/cta-catalogue.conf
oracle:cta_production/PASSWORD@cta
4. Upgrade the CTA software for the next catalogue release version#
In order to perform a catalogue upgrade, the CTA version must be a Catalogue release one. These are identified as a bump in the major
version. Examples:
- v5.11.0.0-1
- v5.12.0.0-1
For detailed info check the Release Notes.
5. Obtain the migration script containing the changes to be applied to the database#
The migration scripts are located in the cta-catalogue-schema project repository, in the folder:
- cta-catalogue-schema/migrations/liquibase/
These files are named according to the following convention: <SOURCE_VERSION>to<DESTINATION_VERSION>.sql
.
Example:
- To upgrade between schema versions 14.0
and 15.0
, use the file 14.0to15.0.sql
.
Procedure to execute the manual schema upgrade#
1. Set all drives down#
> cta-admin dr down '.*' --reason upgrading
2. Verify the database schema is the version you wish to upgrade from#
> cta-catalogue-schema-verify /etc/cta/cta-catalogue.conf
Schema version : 4.5
Checking indexes...
SUCCESS
Checking tables, columns and constraints...
SUCCESS
Status of the checking : SUCCESS
3. Upgrade the database using the Liquibase command#
It is recommended to run the liquibase command in the same directory as the liquibase .properties
file:
# JAVA_OPTS="-Doracle.net.tns_admin=/etc" liquibase --defaultsFile=./liquibase.properties --changeLogFile=/home/smurray/CTA/catalogue/migrations/liquibase/oracle/14.0to15.0.sql update
4. Verify the database schema has been successfully upgraded#
# cta-catalogue-schema-verify /etc/cta/cta-catalogue.conf
Schema version : 4.6
Checking indexes...
SUCCESS
Checking tables, columns and constraints...
SUCCESS
Status of the checking : SUCCESS