Avoid problem with 2.1 -> 2.2 upgrade script issuing error
authorLebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Wed, 11 Jul 2012 14:54:44 +0000 (10:54 -0400)
committerLebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Wed, 11 Jul 2012 16:30:50 +0000 (12:30 -0400)
The error is:
    > ERROR: cannot ALTER TABLE "thesaurus" because it has pending
    > trigger events.

Reported by Justin Hopkins, George Duimovich, and Bill Erickson.

Signed-off-by: Lebbeous Fogle-Weekley <lebbeous@esilibrary.com>
Signed-off-by: Justin Hopkins <hopkinsju@gmail.com>

Open-ILS/src/sql/Pg/version-upgrade/2.1-2.2-upgrade-db.sql

index 6ec712d..f527d29 100644 (file)
@@ -2730,7 +2730,7 @@ CREATE TABLE authority.control_set_bib_field (
 
 CREATE TABLE authority.thesaurus (
     code        TEXT    PRIMARY KEY,     -- MARC21 thesaurus code
-    control_set INT     NOT NULL REFERENCES authority.control_set (id) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
+    control_set INT     REFERENCES authority.control_set (id) ON UPDATE CASCADE ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
     name        TEXT    NOT NULL UNIQUE, -- i18n
     description TEXT                     -- i18n
 );
@@ -12430,7 +12430,9 @@ SELECT SETVAL('config.coded_value_map_id_seq'::TEXT, (SELECT max(id) FROM config
 SELECT evergreen.upgrade_deps_block_check('0717', :eg_version);
 
 -- Allow un-mapped thesauri
-ALTER TABLE authority.thesaurus ALTER COLUMN control_set DROP NOT NULL;
+-- ALTER TABLE authority.thesaurus ALTER COLUMN control_set DROP NOT NULL;
+-- XXX The above line is now covered by changes to the
+-- "CREATE TABLE authority.thesaurus" statement further up.
 
 -- Don't tie "No attempt to code" to LoC
 UPDATE authority.thesaurus SET control_set = NULL WHERE code = '|';