From: Ben Shum Date: Fri, 27 Feb 2015 15:25:48 +0000 (-0500) Subject: LP#1426133: Stamping upgrade script for set merge_profile_id_seq X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=ed0f0789c9a2c76da94c60429d5f03f68565a1e8;p=contrib%2FConifer.git LP#1426133: Stamping upgrade script for set merge_profile_id_seq Signed-off-by: Ben Shum Conflicts: Open-ILS/src/sql/Pg/002.schema.config.sql --- diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql index 4bfbeb1161..97288b311d 100644 --- a/Open-ILS/src/sql/Pg/002.schema.config.sql +++ b/Open-ILS/src/sql/Pg/002.schema.config.sql @@ -91,7 +91,7 @@ CREATE TRIGGER no_overlapping_deps BEFORE INSERT OR UPDATE ON config.db_patch_dependencies FOR EACH ROW EXECUTE PROCEDURE evergreen.array_overlap_check ('deprecates'); -INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0908', :eg_version); -- remingtron/mdriscoll/dyrcona +INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0913', :eg_version); -- remington/bshum CREATE TABLE config.bib_source ( id SERIAL PRIMARY KEY, diff --git a/Open-ILS/src/sql/Pg/upgrade/0913.schema.redo_vandelay_merge_profile_sequence.sql b/Open-ILS/src/sql/Pg/upgrade/0913.schema.redo_vandelay_merge_profile_sequence.sql new file mode 100644 index 0000000000..a8b437af33 --- /dev/null +++ b/Open-ILS/src/sql/Pg/upgrade/0913.schema.redo_vandelay_merge_profile_sequence.sql @@ -0,0 +1,24 @@ +BEGIN; + +SELECT evergreen.upgrade_deps_block_check('0913', :eg_version); + +--stock evergreen comes with 2 merge profiles; move any custom profiles +UPDATE vandelay.merge_profile SET id = id + 100 WHERE id > 2; + +--update the same ids in org unit settings, stored in double quotes +UPDATE actor.org_unit_setting + SET value = '"' || merge_profile_id+100 || '"' + FROM ( + SELECT id, (regexp_matches(value, '"(\d+)"'))[1]::int as merge_profile_id FROM actor.org_unit_setting + WHERE name IN ( + 'acq.upload.default.vandelay.low_quality_fall_thru_profile', + 'acq.upload.default.vandelay.merge_profile' + ) + ) as foo + WHERE actor.org_unit_setting.id = foo.id + AND foo.merge_profile_id > 2; + +--set sequence's next value to 100, or more if necessary +SELECT SETVAL('vandelay.merge_profile_id_seq', GREATEST(100, (SELECT MAX(id) FROM vandelay.merge_profile))); + +COMMIT; diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.redo_vandelay_merge_profile_sequence.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.redo_vandelay_merge_profile_sequence.sql deleted file mode 100644 index bf0f5c99f6..0000000000 --- a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.redo_vandelay_merge_profile_sequence.sql +++ /dev/null @@ -1,24 +0,0 @@ -BEGIN; - ---SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version); - ---stock evergreen comes with 2 merge profiles; move any custom profiles -UPDATE vandelay.merge_profile SET id = id + 100 WHERE id > 2; - ---update the same ids in org unit settings, stored in double quotes -UPDATE actor.org_unit_setting - SET value = '"' || merge_profile_id+100 || '"' - FROM ( - SELECT id, (regexp_matches(value, '"(\d+)"'))[1]::int as merge_profile_id FROM actor.org_unit_setting - WHERE name IN ( - 'acq.upload.default.vandelay.low_quality_fall_thru_profile', - 'acq.upload.default.vandelay.merge_profile' - ) - ) as foo - WHERE actor.org_unit_setting.id = foo.id - AND foo.merge_profile_id > 2; - ---set sequence's next value to 100, or more if necessary -SELECT SETVAL('vandelay.merge_profile_id_seq', GREATEST(100, (SELECT MAX(id) FROM vandelay.merge_profile))); - -COMMIT;