Stamping upgrade script for ISSN normalization fix
authorMike Rylander <mrylander@gmail.com>
Mon, 26 Mar 2012 15:02:33 +0000 (11:02 -0400)
committerMike Rylander <mrylander@gmail.com>
Mon, 26 Mar 2012 15:02:33 +0000 (11:02 -0400)
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Open-ILS/src/sql/Pg/002.schema.config.sql
Open-ILS/src/sql/Pg/upgrade/0693.schema.do_not_despace_issns.sql [new file with mode: 0644]
Open-ILS/src/sql/Pg/upgrade/XXXX.schema.do_not_despace_issns.sql [deleted file]

index 177bbc6..7aff4be 100644 (file)
@@ -57,7 +57,7 @@ CREATE TABLE config.upgrade_log (
     install_date    TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT NOW()
 );
 
-INSERT INTO config.upgrade_log (version) VALUES ('0665'); -- phasefx/miker
+INSERT INTO config.upgrade_log (version) VALUES ('0693'); -- denials/miker
 
 CREATE TABLE config.bib_source (
        id              SERIAL  PRIMARY KEY,
diff --git a/Open-ILS/src/sql/Pg/upgrade/0693.schema.do_not_despace_issns.sql b/Open-ILS/src/sql/Pg/upgrade/0693.schema.do_not_despace_issns.sql
new file mode 100644 (file)
index 0000000..cd6b29f
--- /dev/null
@@ -0,0 +1,28 @@
+BEGIN;
+
+INSERT INTO config.upgrade_log (version) VALUES ('0693');
+
+-- Delete the index normalizer that was meant to remove spaces from ISSNs
+-- but ended up breaking records with multiple ISSNs
+DELETE FROM config.metabib_field_index_norm_map WHERE id IN (
+    SELECT map.id FROM config.metabib_field_index_norm_map map
+        INNER JOIN config.metabib_field cmf ON cmf.id = map.field
+        INNER JOIN config.index_normalizer cin ON cin.id = map.norm
+    WHERE cin.func = 'replace'
+        AND cmf.field_class = 'identifier'
+        AND cmf.name = 'issn'
+        AND map.params = $$[" ",""]$$
+);
+
+-- Reindex records that have more than just a single ISSN
+-- to ensure that spaces are maintained
+SELECT metabib.reingest_metabib_field_entries(source)
+  FROM metabib.identifier_field_entry mife
+    INNER JOIN config.metabib_field cmf ON cmf.id = mife.field
+  WHERE cmf.field_class = 'identifier'
+    AND cmf.name = 'issn'
+    AND char_length(value) > 9
+;
+
+COMMIT;
+
diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.do_not_despace_issns.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.do_not_despace_issns.sql
deleted file mode 100644 (file)
index b788a2d..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
--- Delete the index normalizer that was meant to remove spaces from ISSNs
--- but ended up breaking records with multiple ISSNs
-DELETE FROM config.metabib_field_index_norm_map WHERE id IN (
-    SELECT map.id FROM config.metabib_field_index_norm_map map
-        INNER JOIN config.metabib_field cmf ON cmf.id = map.field
-        INNER JOIN config.index_normalizer cin ON cin.id = map.norm
-    WHERE cin.func = 'replace'
-        AND cmf.field_class = 'identifier'
-        AND cmf.name = 'issn'
-        AND map.params = $$[" ",""]$$
-);
-
--- Reindex records that have more than just a single ISSN
--- to ensure that spaces are maintained
-SELECT metabib.reingest_metabib_field_entries(source)
-  FROM metabib.identifier_field_entry mife
-    INNER JOIN config.metabib_field cmf ON cmf.id = mife.field
-  WHERE cmf.field_class = 'identifier'
-    AND cmf.name = 'issn'
-    AND char_length(value) > 9
-;