From e316c4df0216eb43bc6cb536d34c3712661ff15a Mon Sep 17 00:00:00 2001 From: Mike Rylander Date: Mon, 26 Mar 2012 11:09:14 -0400 Subject: [PATCH] Add ISSN fix to the version upgrade script Signed-off-by: Mike Rylander Signed-off-by: Dan Scott --- .../2.1.1-2.1.2-upgrade-db.sql | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/Open-ILS/src/sql/Pg/version-upgrade/2.1.1-2.1.2-upgrade-db.sql b/Open-ILS/src/sql/Pg/version-upgrade/2.1.1-2.1.2-upgrade-db.sql index 70777a1ea0..6c891d69fe 100644 --- a/Open-ILS/src/sql/Pg/version-upgrade/2.1.1-2.1.2-upgrade-db.sql +++ b/Open-ILS/src/sql/Pg/version-upgrade/2.1.1-2.1.2-upgrade-db.sql @@ -116,3 +116,27 @@ BEGIN END; $func$ LANGUAGE PLPGSQL; +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 +; + -- 2.43.2