LP#1806968 Vandelay record_type sql fix
authorKyle Huckins <khuckins@catalyte.io>
Tue, 27 Nov 2018 23:21:15 +0000 (23:21 +0000)
committerBill Erickson <berickxx@gmail.com>
Mon, 17 Dec 2018 21:58:32 +0000 (16:58 -0500)
- Change record_type to TEXT rather than an enum, constrained
with the option of "authority" or "bib"

Signed-off-by: Kyle Huckins <khuckins@catalyte.io>

 Changes to be committed:
modified:   Open-ILS/src/sql/Pg/012.schema.vandelay.sql
new file:   Open-ILS/src/sql/Pg/upgrade/XXXX.schema.vandelay-record-type-fix.sql

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jason Boyer <jboyer@library.in.gov>

Open-ILS/src/sql/Pg/012.schema.vandelay.sql
Open-ILS/src/sql/Pg/upgrade/XXXX.schema.vandelay-record-type-fix.sql [new file with mode: 0644]

index 6f48276..1f53ad1 100644 (file)
@@ -2272,7 +2272,7 @@ CREATE TABLE vandelay.session_tracker (
                 ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED,
 
     -- bib/auth
-    record_type vandelay.bib_queue_queue_type NOT NULL DEFAULT 'bib',
+    record_type TEXT NOT NULL DEFAULT 'bib',
 
     -- Queue defines the source of the data, it does not necessarily
     -- mean that an action is being performed against an entire queue.
@@ -2300,7 +2300,10 @@ CREATE TABLE vandelay.session_tracker (
         CHECK (state IN ('active','error','complete')),
 
     CONSTRAINT vand_tracker_valid_action_type
-        CHECK (action_type IN ('upload', 'enqueue', 'import'))
+        CHECK (action_type IN ('upload', 'enqueue', 'import')),
+
+    CONSTRAINT vand_tracker_valid_record_type
+        CHECK (record_type IN ('bib', 'authority'))
 );
 
 COMMIT;
diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.vandelay-record-type-fix.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.vandelay-record-type-fix.sql
new file mode 100644 (file)
index 0000000..1187011
--- /dev/null
@@ -0,0 +1,16 @@
+BEGIN;
+
+SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version);
+
+
+ALTER TABLE vandelay.session_tracker
+    ALTER COLUMN record_type TYPE TEXT;
+
+ALTER TABLE vandelay.session_tracker
+    ADD CONSTRAINT vand_tracker_valid_record_type
+        CHECK (record_type IN ('bib', 'authority'));
+
+END;
+$$ LANGUAGE plpgsql;
+
+COMMIT;
\ No newline at end of file