Skip to content
Snippets Groups Projects
Commit f941d481 authored by Jorge Camarero Vera's avatar Jorge Camarero Vera
Browse files

Resolve "Fix `cta-catalogue-schema-verify` checking of NOT NULL constraints in Postgres"

parent 25b3c68b
No related branches found
No related tags found
No related merge requests found
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
- cta/CTA#201 - Improve error message when oracle configured without oracle support - cta/CTA#201 - Improve error message when oracle configured without oracle support
- cta/CTA#203 - Refactor cta-restore-deletes-files by using the connection configuration class in standalone_cli_tools/common - cta/CTA#203 - Refactor cta-restore-deletes-files by using the connection configuration class in standalone_cli_tools/common
### Bug fixes ### Bug fixes
- cta/CTA#13 - Fix `cta-catalogue-schema-verify` checking of NOT NULL constraints in Postgres
- cta/CTA#209 - handle if $HOME is not defined when choosing config file for cta-admin - cta/CTA#209 - handle if $HOME is not defined when choosing config file for cta-admin
# v4.7.13-3 # v4.7.13-3
......
...@@ -19,14 +19,14 @@ ALTER TABLE TAPE ADD LABEL_FORMAT CHAR(1); ...@@ -19,14 +19,14 @@ ALTER TABLE TAPE ADD LABEL_FORMAT CHAR(1);
--rollback ALTER TABLE TAPE DROP COLUMN VERIFICATION_STATUS; --rollback ALTER TABLE TAPE DROP COLUMN VERIFICATION_STATUS;
--rollback ALTER TABLE TAPE DROP COLUMN LABEL_FORMAT; --rollback ALTER TABLE TAPE DROP COLUMN LABEL_FORMAT;
--changeset mdavis:2 failOnError:true dbms:postgresql --changeset mdavis:3 failOnError:true dbms:postgresql
--preconditions onFail:MARK_RAN onError:MARK_RAN --preconditions onFail:MARK_RAN onError:MARK_RAN
--precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE; --precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE;
--precondition-sql-check expectedResult:0 SELECT COUNT(*) FROM USER_INDEXES WHERE INDEX_NAME = 'ARCHIVE_FILE_SCI_IDX' --precondition-sql-check expectedResult:0 SELECT COUNT(*) FROM USER_INDEXES WHERE INDEX_NAME = 'ARCHIVE_FILE_SCI_IDX'
CREATE INDEX ARCHIVE_FILE_SCI_IDX ON ARCHIVE_FILE(STORAGE_CLASS_ID); CREATE INDEX ARCHIVE_FILE_SCI_IDX ON ARCHIVE_FILE(STORAGE_CLASS_ID);
--rollback DROP INDEX ARCHIVE_FILE_SCI_IDX; --rollback DROP INDEX ARCHIVE_FILE_SCI_IDX;
--changeset mdavis:3 failOnError:true dbms:postgresql --changeset mdavis:4 failOnError:true dbms:postgresql
--preconditions onFail:HALT onError:HALT --preconditions onFail:HALT onError:HALT
--precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE; --precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE;
ALTER TABLE VIRTUAL_ORGANIZATION DROP CONSTRAINT VIRTUAL_ORGANIZATION_VON_UN; ALTER TABLE VIRTUAL_ORGANIZATION DROP CONSTRAINT VIRTUAL_ORGANIZATION_VON_UN;
...@@ -102,10 +102,10 @@ ALTER TABLE LOGICAL_LIBRARY ADD DISABLED_REASON VARCHAR(1000); ...@@ -102,10 +102,10 @@ ALTER TABLE LOGICAL_LIBRARY ADD DISABLED_REASON VARCHAR(1000);
--preconditions onFail:HALT onError:HALT --preconditions onFail:HALT onError:HALT
--precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE; --precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE;
--precondition-sql-check expectedResult:"0" SELECT COUNT(*) FROM VIRTUAL_ORGANIZATION WHERE DISK_INSTANCE_NAME NOT IN (SELECT DISK_INSTANCE_NAME FROM DISK_INSTANCE); --precondition-sql-check expectedResult:"0" SELECT COUNT(*) FROM VIRTUAL_ORGANIZATION WHERE DISK_INSTANCE_NAME NOT IN (SELECT DISK_INSTANCE_NAME FROM DISK_INSTANCE);
ALTER TABLE VIRTUAL_ORGANIZATION ADD CONSTRAINT VIRTUAL_ORGANIZATION_DIN_NN CHECK (DISK_INSTANCE_NAME IS NOT NULL); ALTER TABLE VIRTUAL_ORGANIZATION ALTER COLUMN DISK_INSTANCE_NAME SET NOT NULL;
ALTER TABLE VIRTUAL_ORGANIZATION ADD CONSTRAINT VIRTUAL_ORGANIZATION_DIN_FK FOREIGN KEY(DISK_INSTANCE_NAME) REFERENCES DISK_INSTANCE(DISK_INSTANCE_NAME); ALTER TABLE VIRTUAL_ORGANIZATION ADD CONSTRAINT VIRTUAL_ORGANIZATION_DIN_FK FOREIGN KEY(DISK_INSTANCE_NAME) REFERENCES DISK_INSTANCE(DISK_INSTANCE_NAME);
CREATE INDEX VIRTUAL_ORG_DIN_IDX ON VIRTUAL_ORGANIZATION(DISK_INSTANCE_NAME); CREATE INDEX VIRTUAL_ORG_DIN_IDX ON VIRTUAL_ORGANIZATION(DISK_INSTANCE_NAME);
--rollback ALTER TABLE VIRTUAL_ORGANIZATION DROP CONSTRAINT VIRTUAL_ORGANIZATION_DIN_NN; --rollback ALTER TABLE VIRTUAL_ORGANIZATION ALTER COLUMN DISK_INSTANCE_NAME DROP NOT NULL;
--rollback ALTER TABLE VIRTUAL_ORGANIZATION DROP CONSTRAINT VIRTUAL_ORGANIZATION_DIN_FK; --rollback ALTER TABLE VIRTUAL_ORGANIZATION DROP CONSTRAINT VIRTUAL_ORGANIZATION_DIN_FK;
--rollback DROP INDEX VIRTUAL_ORG_DIN_IDX; --rollback DROP INDEX VIRTUAL_ORG_DIN_IDX;
...@@ -148,17 +148,17 @@ ALTER TABLE ARCHIVE_FILE ADD CONSTRAINT ARCHIVE_FILE_DIN_FK FOREIGN KEY(DISK_INS ...@@ -148,17 +148,17 @@ ALTER TABLE ARCHIVE_FILE ADD CONSTRAINT ARCHIVE_FILE_DIN_FK FOREIGN KEY(DISK_INS
--precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE; --precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE;
ALTER TABLE DISK_SYSTEM ALTER COLUMN FREE_SPACE_QUERY_URL DROP NOT NULL; ALTER TABLE DISK_SYSTEM ALTER COLUMN FREE_SPACE_QUERY_URL DROP NOT NULL;
ALTER TABLE DISK_SYSTEM ALTER COLUMN REFRESH_INTERVAL DROP NOT NULL; ALTER TABLE DISK_SYSTEM ALTER COLUMN REFRESH_INTERVAL DROP NOT NULL;
ALTER TABLE DISK_SYSTEM ADD CONSTRAINT DISK_SYSTEM_DIN_NN CHECK (DISK_INSTANCE_NAME IS NOT NULL); ALTER TABLE DISK_SYSTEM ALTER COLUMN DISK_INSTANCE_NAME SET NOT NULL;
ALTER TABLE DISK_SYSTEM ADD CONSTRAINT DISK_SYSTEM_DISN_NN CHECK (DISK_INSTANCE_SPACE_NAME IS NOT NULL); ALTER TABLE DISK_SYSTEM ALTER COLUMN DISK_INSTANCE_SPACE_NAME SET NOT NULL;
ALTER TABLE DISK_SYSTEM ADD CONSTRAINT DISK_SYSTEM_DIN_DISN_FK FOREIGN KEY(DISK_INSTANCE_NAME, DISK_INSTANCE_SPACE_NAME) REFERENCES DISK_INSTANCE_SPACE(DISK_INSTANCE_NAME, DISK_INSTANCE_SPACE_NAME); ALTER TABLE DISK_SYSTEM ADD CONSTRAINT DISK_SYSTEM_DIN_DISN_FK FOREIGN KEY(DISK_INSTANCE_NAME, DISK_INSTANCE_SPACE_NAME) REFERENCES DISK_INSTANCE_SPACE(DISK_INSTANCE_NAME, DISK_INSTANCE_SPACE_NAME);
--rollback ALTER TABLE DISK_SYSTEM ADD CONSTRAINT DISK_SYSTEM_FSQU_NN CHECK (FREE_SPACE_QUERY_URL IS NOT NULL); --rollback ALTER TABLE DISK_SYSTEM ALTER COLUMN FREE_SPACE_QUERY_URL SET NOT NULL;
--rollback ALTER TABLE DISK_SYSTEM ADD CONSTRAINT DISK_SYSTEM_RI_NN CHECK (REFRESH_INTERVAL IS NOT NULL); --rollback ALTER TABLE DISK_SYSTEM ALTER COLUMN REFRESH_INTERVAL SET NOT NULL;
--rollback ALTER TABLE DISK_SYSTEM DROP CONSTRAINT DISK_SYSTEM_DIN_NN; --rollback ALTER TABLE DISK_SYSTEM ALTER COLUMN DISK_INSTANCE_NAME DROP NOT NULL;
--rollback ALTER TABLE DISK_SYSTEM DROP CONSTRAINT DISK_SYSTEM_DISN_NN; --rollback ALTER TABLE DISK_SYSTEM ALTER COLUMN DISK_INSTANCE_SPACE_NAME DROP NOT NULL;
--rollback ALTER TABLE DISK_SYSTEM DROP CONSTRAINT DISK_SYSTEM_DIN_DISN_FK; --rollback ALTER TABLE DISK_SYSTEM DROP CONSTRAINT DISK_SYSTEM_DIN_DISN_FK;
--changeset mdavis:4 failOnError:true dbms:postgresql --changeset mdavis:13 failOnError:true dbms:postgresql
--preconditions onFail:HALT onError:HALT --preconditions onFail:HALT onError:HALT
--precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE; --precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE;
DROP TABLE TAPE_DRIVE; DROP TABLE TAPE_DRIVE;
...@@ -218,7 +218,7 @@ DROP TABLE TAPE_DRIVE; ...@@ -218,7 +218,7 @@ DROP TABLE TAPE_DRIVE;
--rollback 'MOUNTING', 'TRANSFERING', 'UNLOADING', 'UNMOUNTING', 'DRAININGTODISK', 'CLEANINGUP', 'SHUTDOWN', 'UNKNOWN')) --rollback 'MOUNTING', 'TRANSFERING', 'UNLOADING', 'UNMOUNTING', 'DRAININGTODISK', 'CLEANINGUP', 'SHUTDOWN', 'UNKNOWN'))
--rollback ); --rollback );
--changeset mvelosob:13 failOnError:true dbms:postgresql --changeset mvelosob:14 failOnError:true dbms:postgresql
--preconditions onFail:HALT onError:HALT --preconditions onFail:HALT onError:HALT
--precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE; --precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE;
DROP TABLE ACTIVITIES_WEIGHTS; DROP TABLE ACTIVITIES_WEIGHTS;
...@@ -236,7 +236,7 @@ DROP TABLE ACTIVITIES_WEIGHTS; ...@@ -236,7 +236,7 @@ DROP TABLE ACTIVITIES_WEIGHTS;
--rollback ); --rollback );
--changeset mvelosob:14 failOnError:true dbms:postgresql --changeset mvelosob:15 failOnError:true dbms:postgresql
--preconditions onFail:HALT onError:HALT --preconditions onFail:HALT onError:HALT
--precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE; --precondition-sql-check expectedResult:"4.6" SELECT CONCAT(CONCAT(CAST(SCHEMA_VERSION_MAJOR as VARCHAR(10)),'.'), CAST(SCHEMA_VERSION_MINOR AS VARCHAR(10))) AS CATALOGUE_VERSION FROM CTA_CATALOGUE;
UPDATE CTA_CATALOGUE SET SCHEMA_VERSION_MAJOR=10; UPDATE CTA_CATALOGUE SET SCHEMA_VERSION_MAJOR=10;
......
...@@ -43,8 +43,7 @@ yum install --assumeyes wget libaio; ...@@ -43,8 +43,7 @@ yum install --assumeyes wget libaio;
mkdir -p /shared/etc_cta; mkdir -p /shared/etc_cta;
echo ${DATABASEURL} &> /shared/etc_cta/cta-catalogue.conf; echo ${DATABASEURL} &> /shared/etc_cta/cta-catalogue.conf;
echo $CTA_VERSION cd /root
if [[ $CTA_VERSION ]] if [[ $CTA_VERSION ]]
then then
echo "CTA_VERSION" echo "CTA_VERSION"
......
...@@ -22,6 +22,8 @@ EOF ...@@ -22,6 +22,8 @@ EOF
exit 1 exit 1
} }
die() { echo "$@" 1>&2 ; exit 1; }
CTA_VERSION="" CTA_VERSION=""
while getopts "n:v:" o; do while getopts "n:v:" o; do
...@@ -103,6 +105,9 @@ else ...@@ -103,6 +105,9 @@ else
exit 1 exit 1
fi fi
# Check if cta-catalogue-schema-verify has a successing output
kubectl -n ${NAMESPACE} exec ctafrontend -- cta-catalogue-schema-verify /etc/cta/cta-catalogue.conf || die "Error verifying catalogue"
# If the previous and new schema has same major version, we can run a simple archive-retrieve test # If the previous and new schema has same major version, we can run a simple archive-retrieve test
PREVIOUS_MAJOR=$(echo ${PREVIOUS_SCHEMA_VERSION} | cut -d. -f1) PREVIOUS_MAJOR=$(echo ${PREVIOUS_SCHEMA_VERSION} | cut -d. -f1)
if [ "${MAJOR}" == "${PREVIOUS_MAJOR}" ] ; then if [ "${MAJOR}" == "${PREVIOUS_MAJOR}" ] ; then
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment