JBAS-1243 2.7 SQL upgrade INSERT wrapping
authorBill Erickson <berickxx@gmail.com>
Thu, 3 Mar 2016 16:05:48 +0000 (11:05 -0500)
committerBill Erickson <berickxx@gmail.com>
Thu, 21 Mar 2019 19:46:23 +0000 (15:46 -0400)
1. Wrap INSERTs in insert_on_deploy() test.
2. Avoid unnecessary inserts, e.g. upgrade log versions

Signed-off-by: Bill Erickson <berickxx@gmail.com>
KCLS/sql/schema/deploy/2.5-to-2.7-upgrade.sql

index 96c11be..adf1da5 100644 (file)
@@ -27,14 +27,21 @@ UPDATE config.metabib_field SET browse_field = FALSE WHERE id = 10;
 -- Cargo-culting the other configs for now.  Will reasess as needed.
 CREATE TEXT SEARCH CONFIGURATION call_number (COPY = english_nostop);
 
-INSERT INTO config.metabib_class (name, label)
-    VALUES ('call_number', 'Call Number');
+DO $$
+BEGIN
+    IF evergreen.insert_on_deploy() THEN
+        INSERT INTO config.metabib_class (name, label)
+            VALUES ('call_number', 'Call Number');
+
+        INSERT INTO config.metabib_class_ts_map
+            (field_class, ts_config, index_weight, always)
+        VALUES
+            ('call_number','simple','A',true),
+            ('call_number','english_nostop','C',true);
+    END IF;
+END $$;
+
 
-INSERT INTO config.metabib_class_ts_map
-    (field_class, ts_config, index_weight, always)
-VALUES
-    ('call_number','simple','A',true),
-    ('call_number','english_nostop','C',true);
 
 /*  JBAS-1093 
     Allow duplicate sort_values on browse entries.
@@ -68,10 +75,10 @@ ALTER TABLE metabib.browse_call_number_entry
     UNIQUE(sort_value, value);
 
 \set eg_version '''2.6.0'''
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.6.0', :eg_version);
+--INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.6.0', :eg_version);
 
 -- check whether patch can be applied
-SELECT evergreen.upgrade_deps_block_check('0851', :eg_version);
+----SELECT evergreen.upgrade_deps_block_check('0851', :eg_version);
 
 CREATE OR REPLACE FUNCTION evergreen.maintain_901 () RETURNS TRIGGER AS $func$
 use strict;
@@ -432,7 +439,11 @@ $func$ LANGUAGE 'plperlu' STRICT IMMUTABLE;
 --
 
 -- check whether patch can be applied
-SELECT evergreen.upgrade_deps_block_check('0853', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0853', :eg_version);
+
+DO $$
+BEGIN
+    IF evergreen.insert_on_deploy() THEN
 
 INSERT into config.org_unit_setting_type
 ( name, grp, label, description, datatype, fm_class ) VALUES
@@ -442,9 +453,15 @@ INSERT into config.org_unit_setting_type
   'bool', null
 );
 
+    END IF;
+END $$;
+
 
-SELECT evergreen.upgrade_deps_block_check('0854', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0854', :eg_version);
 
+DO $$
+BEGIN
+    IF evergreen.insert_on_deploy() THEN
 INSERT INTO permission.perm_list ( id, code, description ) VALUES (
     553,
     'UPDATE_ORG_UNIT_SETTING.circ.min_item_price',
@@ -495,12 +512,15 @@ VALUES (
     NULL
 );
 
+    END IF;
+END $$;
+
 -- Compiled list of all changed functions and views where we went from:
 --   array_accum() to array_agg()
 --   array_to_string(array_agg()) to string_agg()
 
 
-SELECT evergreen.upgrade_deps_block_check('0855', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0855', :eg_version);
 
 -- from 000.functions.general.sql
 
@@ -1988,7 +2008,7 @@ SELECT  r.id,
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0856', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0856', :eg_version);
 -- KCLS metabib.staged_browse() update went here, but our version conflicts
 -- heavily with stock.  Required change (STRING_AGG casting) already covered.
 
@@ -2010,8 +2030,11 @@ SELECT evergreen.upgrade_deps_block_check('0856', :eg_version);
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0857', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0857', :eg_version);
 
+DO $$
+BEGIN
+    IF evergreen.insert_on_deploy() THEN
 INSERT INTO config.global_flag (name, enabled, label)
 VALUES (
     'opac.located_uri.act_as_copy',
@@ -2023,6 +2046,8 @@ VALUES (
         'label'
     )
 );
+    END IF;
+END $$;
 
 CREATE OR REPLACE FUNCTION search.query_parser_fts (
 
@@ -2465,7 +2490,7 @@ $F$ LANGUAGE SQL STABLE;
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0858', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0858', :eg_version);
 
 -- Fix faulty seed data. Otherwise for ptype 'f' we have subfield 'e'
 -- overlapping subfield 'd'
@@ -2479,8 +2504,11 @@ UPDATE config.marc21_physical_characteristic_subfield_map
 --
 
 -- check whether patch can be applied
-SELECT evergreen.upgrade_deps_block_check('0859', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0859', :eg_version);
 
+DO $$
+BEGIN
+    IF evergreen.insert_on_deploy() THEN
 -- add new granular settings for requiring use of staff initials
 INSERT INTO config.org_unit_setting_type
     (name, grp, label, description, datatype)
@@ -2533,6 +2561,8 @@ INSERT INTO config.org_unit_setting_type
         ),
         'bool'
     );
+    END IF;
+END $$;
 
 -- Update any existing setting so that the original set value is now passed to
 -- one of the newer settings.
@@ -2544,6 +2574,9 @@ WHERE name = 'ui.staff.require_initials';
 -- Add similar values for new settings as old ones to preserve existing configured
 -- functionality.
 
+DO $$
+BEGIN
+    IF evergreen.insert_on_deploy() THEN
 INSERT INTO actor.org_unit_setting (org_unit, name, value)
 SELECT org_unit, 'ui.staff.require_initials.patron_info_notes', value
 FROM actor.org_unit_setting
@@ -2553,6 +2586,8 @@ INSERT INTO actor.org_unit_setting (org_unit, name, value)
 SELECT org_unit, 'ui.staff.require_initials.copy_notes', value
 FROM actor.org_unit_setting
 WHERE name = 'ui.staff.require_initials.patron_standing_penalty';
+    END IF;
+END $$;
 
 -- Update setting logs so that the original setting name's history is now transferred
 -- over to one of the newer settings.
@@ -2567,7 +2602,7 @@ DELETE FROM config.org_unit_setting_type WHERE name = 'ui.staff.require_initials
 
 
 -- oh, the irony
-SELECT evergreen.upgrade_deps_block_check('0860', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0860', :eg_version);
 
 CREATE OR REPLACE FUNCTION evergreen.array_overlap_check (/* field */) RETURNS TRIGGER AS $$
 DECLARE
@@ -2628,14 +2663,14 @@ $$ LANGUAGE PLPGSQL;
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0861', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0861', :eg_version);
 
 CREATE INDEX authority_record_entry_create_date_idx ON authority.record_entry ( create_date );
 CREATE INDEX authority_record_entry_edit_date_idx ON authority.record_entry ( edit_date );
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0863', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0863', :eg_version);
 
 
 -- cheat sheet for enabling Stripe payments:
@@ -2647,6 +2682,9 @@ SELECT evergreen.upgrade_deps_block_check('0863', :eg_version);
 --  NEW 'credit.processor.stripe.pubkey' must be set
 --  NEW 'credit.processor.stripe.secretkey' must be set
 
+DO $$
+BEGIN
+    IF evergreen.insert_on_deploy() THEN
 INSERT into config.org_unit_setting_type
 ( name, grp, label, description, datatype, fm_class ) VALUES
 
@@ -2677,13 +2715,15 @@ INSERT into config.org_unit_setting_type
         'coust', 'description'),
     'string', null)
 ;
+    END IF;
+END $$;
 
 UPDATE config.org_unit_setting_type
 SET description = 'This might be "AuthorizeNet", "PayPal", "PayflowPro", or "Stripe".'
 WHERE name = 'credit.processor.default' AND description = 'This might be "AuthorizeNet", "PayPal", etc.'; -- don't clobber local edits or i18n
 
 
-SELECT evergreen.upgrade_deps_block_check('0864', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0864', :eg_version);
 
 CREATE EXTENSION IF NOT EXISTS intarray WITH SCHEMA public;
 
@@ -2799,6 +2839,9 @@ CREATE TEMP TABLE attr_set ON COMMIT DROP AS SELECT  DISTINCT id AS source, (eac
 DELETE FROM attr_set WHERE BTRIM(value) = '';
 
 -- Grab sort values for the new sorting mechanism
+DO $$
+BEGIN
+    IF evergreen.insert_on_deploy() THEN
 INSERT INTO metabib.record_sorter (source,attr,value)
     SELECT  a.source, a.key, a.value
       FROM  attr_set a
@@ -2821,6 +2864,8 @@ INSERT INTO metabib.record_attr_vector_list (source,vlist)
             LEFT JOIN config.coded_value_map c ON (c.ctype = attr_set.key AND c.code = attr_set.value)
       WHERE COALESCE(u.id,c.id) IS NOT NULL
       GROUP BY 1;
+    END IF;
+END $$;
 
 DROP VIEW IF EXISTS reporter.classic_current_circ; 
 DROP VIEW IF EXISTS stats.fleshed_call_number;
@@ -3166,6 +3211,10 @@ $$ LANGUAGE PLPGSQL;
 
 -- add new sr_format attribute definition
 
+DO $$
+BEGIN
+    IF evergreen.insert_on_deploy() THEN
+
 INSERT INTO config.record_attr_definition (name, label, phys_char_sf)
 VALUES (
     'sr_format', 
@@ -3350,7 +3399,8 @@ INSERT INTO config.composite_attr_entry_definition
 -- lpbook
 (585, '{"0":[{"_attr":"item_type","_val":"a"},{"_attr":"item_type","_val":"t"}],"1":{"_attr":"item_form","_val":"d"},"2":[{"_attr":"bib_level","_val":"a"},{"_attr":"bib_level","_val":"c"},{"_attr":"bib_level","_val":"d"},{"_attr":"bib_level","_val":"m"}]}');
 
-
+    END IF;
+END $$;
 
 
 CREATE OR REPLACE FUNCTION unapi.mra (
@@ -3396,7 +3446,7 @@ CREATE OR REPLACE FUNCTION unapi.mra (
 $F$ LANGUAGE SQL STABLE;
 
 
-SELECT evergreen.upgrade_deps_block_check('0865', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0865', :eg_version);
 
 -- First, explode the field into constituent parts
 WITH format_parts_array AS (
@@ -3434,7 +3484,7 @@ WITH format_parts_array AS (
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0866', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0866', :eg_version);
 
 DROP FUNCTION asset.record_has_holdable_copy (BIGINT);
 CREATE FUNCTION asset.record_has_holdable_copy ( rid BIGINT, ou INT DEFAULT NULL) RETURNS BOOL AS $f$
@@ -3832,7 +3882,11 @@ $F$ LANGUAGE SQL STABLE;
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0867', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0867', :eg_version);
+
+DO $$
+BEGIN
+    IF evergreen.insert_on_deploy() THEN
 
 INSERT INTO config.global_flag (name, label, value, enabled) VALUES (
     'opac.metarecord.holds.format_attr', 
@@ -3939,11 +3993,15 @@ INSERT INTO config.coded_value_map
     oils_i18n_gettext(606, 'Large Print Book', 'ccvm', 'search_label'))
 ;
 
+    END IF;
+END $$;
+
 -- but we can auto-generate the composite definitions
 
 DO $$
     DECLARE format TEXT;
 BEGIN
+    IF evergreen.insert_on_deploy() THEN  
     FOR format IN SELECT UNNEST(
         '{book,braille,software,dvd,kit,map,microform,score,picture,equip,serial,vhs,cdaudiobook,cdmusic,casaudiobook,casmusic,phonospoken,phonomusic,lpbook}'::text[]) LOOP
 
@@ -3959,8 +4017,13 @@ BEGIN
                     WHERE ccvm.ctype = 'icon_format' AND ccvm.code = format)
             );
     END LOOP; 
+    END IF;
 END $$;
 
+DO $$                                                                          
+BEGIN                                                                          
+    IF evergreen.insert_on_deploy() THEN  
+
 INSERT INTO config.coded_value_map
     (id, ctype, code, value, search_label) VALUES 
 (607, 'icon_format', 'music', 
@@ -3989,10 +4052,14 @@ INSERT INTO config.coded_value_map
 INSERT INTO config.composite_attr_entry_definition 
     (coded_value, definition) VALUES (609, '{"_attr":"vr_format","_val":"s"}');
 
+    END IF;                                                                    
+END $$; 
+
+
 
 
 /* KCLS alread has this
-SELECT evergreen.upgrade_deps_block_check('0869', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0869', :eg_version);
 
 CREATE OR REPLACE FUNCTION action.hold_copy_calculated_proximity_update () RETURNS TRIGGER AS $f$
 BEGIN
@@ -4027,7 +4094,7 @@ UPDATE action.hold_copy_map SET proximity = proximity WHERE proximity IS NULL;
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0870', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0870', :eg_version);
 
 CREATE OR REPLACE FUNCTION evergreen.located_uris (
     bibid BIGINT[],
@@ -4066,7 +4133,11 @@ LANGUAGE SQL STABLE;
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0871', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0871', :eg_version);
+
+DO $$                                                                          
+BEGIN                                                                          
+    IF evergreen.insert_on_deploy() THEN  
 
 INSERT INTO config.record_attr_definition 
     (name, label, multi, filter, composite) VALUES (
@@ -4150,6 +4221,8 @@ INSERT INTO config.coded_value_map
     oils_i18n_gettext(633, 'Blu-ray', 'ccvm', 'value'),
     oils_i18n_gettext(633, 'Blu-ray', 'ccvm', 'search_label'));
 
+    END IF;                                                                    
+END $$; 
 
 
 -- copy the composite definition from icon_format into 
@@ -4190,7 +4263,7 @@ UPDATE config.global_flag
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0872', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0872', :eg_version);
 
 CREATE OR REPLACE FUNCTION metabib.remap_metarecord_for_bib( bib_id BIGINT, fp TEXT, bib_is_deleted BOOL DEFAULT FALSE, retain_deleted BOOL DEFAULT FALSE ) RETURNS BIGINT AS $func$
 DECLARE
@@ -4550,7 +4623,7 @@ SELECT  count(metabib.remap_metarecord_for_bib( bre.id, bre.fingerprint, TRUE, C
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0873', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0873', :eg_version);
 
 CREATE OR REPLACE FUNCTION action.find_hold_matrix_matchpoint(pickup_ou integer, request_ou integer, match_item bigint, match_user integer, match_requestor integer)
   RETURNS integer AS
@@ -4935,7 +5008,7 @@ $func$ LANGUAGE plpgsql;
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0874', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0874', :eg_version);
 
 DROP FUNCTION IF EXISTS evergreen.oils_xpath( TEXT, TEXT, ANYARRAY);
 DROP FUNCTION IF EXISTS public.oils_xpath(TEXT, TEXT, ANYARRAY);
@@ -5556,7 +5629,7 @@ END;
 $func$ LANGUAGE PLPGSQL;
 
 
-SELECT evergreen.upgrade_deps_block_check('0875', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0875', :eg_version);
 
 ALTER TABLE authority.record_entry ADD COLUMN heading TEXT, ADD COLUMN simple_heading TEXT;
 
@@ -5595,7 +5668,11 @@ ALTER FUNCTION authority.simple_heading_set(TEXT) STABLE STRICT;
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0876', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0876', :eg_version);
+
+DO $$                                                                          
+BEGIN                                                                          
+    IF evergreen.insert_on_deploy() THEN  
 
 INSERT INTO permission.perm_list ( code, description ) VALUES
  ( 'group_application.user.staff.admin.system_admin', oils_i18n_gettext( '',
@@ -5610,8 +5687,11 @@ INSERT INTO permission.perm_list ( code, description ) VALUES
     'Allow a user to add/remove users to/from the "Volunteers" group', 'ppl', 'description' ))
 ;
 
+    END IF;                                                                    
+END $$; 
+
 
-SELECT evergreen.upgrade_deps_block_check('0877', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0877', :eg_version);
 
 -- Don't use Series search field as the browse field
 /*
@@ -5624,10 +5704,18 @@ WHERE id = 1;
 */
 
 -- Create a new series browse config
+DO $DEPLOY$                                                                          
+BEGIN                                                                          
+    IF evergreen.insert_on_deploy() THEN  
+
 INSERT INTO config.metabib_field ( id, field_class, name, label, format, xpath, search_field, authority_xpath, browse_field, browse_sort_xpath ) VALUES
     (32, 'series', 'browse', oils_i18n_gettext(32, 'Series Title (Browse)', 'cmf', 'label'), 'mods32', $$//mods32:mods/mods32:relatedItem[@type="series"]/mods32:titleInfo[@type="nfi"]$$, FALSE, '//@xlink:href', TRUE, $$*[local-name() != "nonSort"]$$ );
 
-SELECT evergreen.upgrade_deps_block_check('0878', :eg_version);
+    END IF;                                                                    
+END $DEPLOY$; 
+
+
+--SELECT evergreen.upgrade_deps_block_check('0878', :eg_version);
 
 CREATE OR REPLACE FUNCTION metabib.reingest_metabib_field_entries( bib_id BIGINT, skip_facet BOOL DEFAULT FALSE, skip_browse BOOL DEFAULT FALSE, skip_search BOOL DEFAULT FALSE ) RETURNS VOID AS $func$
 DECLARE
@@ -5830,7 +5918,7 @@ $func$ LANGUAGE PLPGSQL;
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0879', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0879', :eg_version);
 
 CREATE OR REPLACE FUNCTION vandelay._get_expr_push_jrow(
     node vandelay.match_set_point,
@@ -5917,16 +6005,16 @@ ALTER TABLE authority.record_entry ENABLE TRIGGER map_thesaurus_to_control_set;
 
 --Upgrade Script for 2.6.0 to 2.6.1
 \set eg_version '''2.6.1'''
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.6.1', :eg_version);
+--INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.6.1', :eg_version);
 
--- SELECT evergreen.upgrade_deps_block_check('0880', :eg_version);
+---- SELECT evergreen.upgrade_deps_block_check('0880', :eg_version);
 -- SELECT evergreen.upgrade_deps_block_check('0881', :eg_version);
 
 --Upgrade Script for 2.6.1 to 2.6.2
 \set eg_version '''2.6.2'''
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.6.2', :eg_version);
+--INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.6.2', :eg_version);
 
-SELECT evergreen.upgrade_deps_block_check('0882', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0882', :eg_version);
 
 CREATE OR REPLACE FUNCTION search.query_parser_fts (
 
@@ -6293,13 +6381,13 @@ BEGIN
 END;
 $func$ LANGUAGE PLPGSQL;
 
--- SELECT evergreen.upgrade_deps_block_check('0883', :eg_version);
+---- SELECT evergreen.upgrade_deps_block_check('0883', :eg_version);
 
 --Upgrade Script for 2.6.2 to 2.6.3
 \set eg_version '''2.6.3'''
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.6.3', :eg_version);
+--INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.6.3', :eg_version);
 
-SELECT evergreen.upgrade_deps_block_check('0887', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0887', :eg_version);
 
 DROP FUNCTION IF EXISTS vandelay.marc21_extract_fixed_field_list( text, text );
 
@@ -6418,14 +6506,14 @@ CREATE OR REPLACE FUNCTION biblio.marc21_extract_all_fixed_fields( rid BIGINT )
 $func$ LANGUAGE SQL;
 
 
--- SELECT evergreen.upgrade_deps_block_check('0890', :eg_version);
--- SELECT evergreen.upgrade_deps_block_check('0891', :eg_version);
+---- SELECT evergreen.upgrade_deps_block_check('0890', :eg_version);
+---- SELECT evergreen.upgrade_deps_block_check('0891', :eg_version);
 
 --Upgrade Script for 2.6.3 to 2.7.0
 \set eg_version '''2.7.0'''
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.0', :eg_version);
+--INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.0', :eg_version);
 -- check whether patch can be applied
-SELECT evergreen.upgrade_deps_block_check('0884', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0884', :eg_version);
 
 UPDATE container.biblio_record_entry_bucket_type
 SET label = oils_i18n_gettext(
@@ -6496,7 +6584,7 @@ description = oils_i18n_gettext(
 ) WHERE name = 'opac.default_list';
 
 
-SELECT evergreen.upgrade_deps_block_check('0885', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0885', :eg_version);
 
 CREATE OR REPLACE FUNCTION evergreen.ranked_volumes(
     bibid BIGINT[],
@@ -6594,7 +6682,11 @@ CREATE OR REPLACE FUNCTION evergreen.ranked_volumes
     AS $$ SELECT * FROM evergreen.ranked_volumes(ARRAY[$1],$2,$3,$4,$5,$6,$7) $$ LANGUAGE SQL STABLE;
 
 
-SELECT evergreen.upgrade_deps_block_check('0886', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0886', :eg_version);
+
+DO $$                                                                          
+BEGIN                                                                          
+    IF evergreen.insert_on_deploy() THEN  
 
 INSERT INTO config.copy_status
 (id, name, holdable, opac_visible, copy_active, restrict_copy_delete)
@@ -6613,9 +6705,12 @@ VALUES
      'coust', 'description'),
  'bool');
 
+     END IF;                                                                    
+END $$; 
+
 
 -- check whether patch can be applied
-SELECT evergreen.upgrade_deps_block_check('0888', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0888', :eg_version);
 
 DROP VIEW acq.lineitem_summary;
 
@@ -6678,7 +6773,7 @@ CREATE VIEW acq.lineitem_summary AS
 
 
 -- check whether patch can be applied
-SELECT evergreen.upgrade_deps_block_check('0889', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0889', :eg_version);
 
 -- Update ACQ cancel reason names, but only those that 
 -- have not already been locally modified from stock values.
@@ -6752,9 +6847,9 @@ UPDATE acq.cancel_reason SET label = 'Delayed: ' || label
 
 --Upgrade Script for 2.7.0 to 2.7.1
 \set eg_version '''2.7.1'''
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.1', :eg_version);
+--INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.1', :eg_version);
 
-SELECT evergreen.upgrade_deps_block_check('0892', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0892', :eg_version);
 
 CREATE OR REPLACE VIEW metabib.record_attr_flat AS
     SELECT  v.source AS id,
@@ -6860,7 +6955,7 @@ $F$ LANGUAGE SQL STABLE;
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0893', :eg_version); 
+--SELECT evergreen.upgrade_deps_block_check('0893', :eg_version); 
 
 CREATE OR REPLACE VIEW reporter.simple_record AS
 SELECT  r.id,
@@ -6900,12 +6995,16 @@ SELECT  r.id,
   GROUP BY 1,2,3,4,5,6,7,8,9,10,11,12,13,14;
 
 
-SELECT evergreen.upgrade_deps_block_check('0894', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0894', :eg_version);
 
 CREATE INDEX m_b_voider_idx ON money.billing (voider);
 
 
-SELECT evergreen.upgrade_deps_block_check('0895', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0895', :eg_version);
+
+DO $$                                                                          
+BEGIN                                                                          
+    IF evergreen.insert_on_deploy() THEN  
 
 INSERT INTO config.marc21_ff_pos_map (fixed_field, tag, rec_type,start_pos, length, default_val) VALUES ('File', '008', 'COM', 26, 1, 'u');
 INSERT INTO config.marc21_ff_pos_map (fixed_field, tag, rec_type,start_pos, length, default_val) VALUES ('File', '006', 'COM', 9, 1, 'u');
@@ -6918,11 +7017,14 @@ INSERT INTO config.record_attr_definition (name,label,fixed_field) values ('file
 INSERT INTO config.record_attr_definition (name,label,fixed_field) values ('freq','Freq','Freq');
 INSERT INTO config.record_attr_definition (name,label,fixed_field) values ('regl','Regl','Regl');
 
+    END IF;                                                                    
+END $$; 
+
 --Upgrade Script for 2.7.1 to 2.7.2
 \set eg_version '''2.7.2'''
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.2', :eg_version);
+--INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.2', :eg_version);
 
-SELECT evergreen.upgrade_deps_block_check('0896', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0896', :eg_version);
 
 CREATE OR REPLACE FUNCTION asset.acp_location_fixer()
 RETURNS TRIGGER AS $$
@@ -6952,7 +7054,7 @@ CREATE TRIGGER acp_location_fixer_trig
     FOR EACH ROW EXECUTE PROCEDURE asset.acp_location_fixer();
 
 
-SELECT evergreen.upgrade_deps_block_check('0897', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0897', :eg_version);
 
 
 /*
@@ -7136,7 +7238,7 @@ BEGIN
 END;
 $BODY$ LANGUAGE plpgsql;
 
-SELECT evergreen.upgrade_deps_block_check('0898', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0898', :eg_version);
 
 CREATE OR REPLACE FUNCTION unapi.mmr_mra (
     obj_id BIGINT,
@@ -7233,13 +7335,13 @@ CREATE OR REPLACE FUNCTION unapi.mmr_mra (
     )
 $F$ LANGUAGE SQL STABLE;
 
-SELECT evergreen.upgrade_deps_block_check('0899', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0899', :eg_version);
 
 ALTER FUNCTION asset.label_normalizer_generic(TEXT) IMMUTABLE;
 ALTER FUNCTION asset.label_normalizer_dewey(TEXT) IMMUTABLE;
 ALTER FUNCTION asset.label_normalizer_lc(TEXT) IMMUTABLE;
 
-SELECT evergreen.upgrade_deps_block_check('0900', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0900', :eg_version);
 
 CREATE OR REPLACE VIEW metabib.record_attr AS
     SELECT  id, HSTORE( ARRAY_AGG( attr ), ARRAY_AGG( value ) ) AS attrs
@@ -7249,9 +7351,9 @@ CREATE OR REPLACE VIEW metabib.record_attr AS
 
 --Upgrade Script for 2.7.2 to 2.7.3
 \set eg_version '''2.7.3'''
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.3', :eg_version);
+--INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.3', :eg_version);
 
-SELECT evergreen.upgrade_deps_block_check('0901', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0901', :eg_version);
 
 CREATE OR REPLACE FUNCTION actor.usr_purge_data(
        src_usr  IN INTEGER,
@@ -7587,7 +7689,7 @@ $$ LANGUAGE plpgsql;
 --
 
 -- check whether patch can be applied
-SELECT evergreen.upgrade_deps_block_check('0904', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0904', :eg_version);
 
 -- The code for "uncoded" audience is a space, but upgraded DBs may have a blank.
 UPDATE  config.coded_value_map
@@ -7835,7 +7937,7 @@ $func$ LANGUAGE PLPGSQL;
 
 
 -- check whether patch can be applied
-SELECT evergreen.upgrade_deps_block_check('0905', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0905', :eg_version);
 
 CREATE OR REPLACE FUNCTION authority.normalize_heading( marcxml TEXT, no_thesaurus BOOL ) RETURNS TEXT AS $func$
 DECLARE
@@ -7942,14 +8044,14 @@ SELECT COUNT(*) FROM authority.record_entry WHERE heading LIKE 'NOHEADING%';
 */
 
 -- check whether patch can be applied
-SELECT evergreen.upgrade_deps_block_check('0906', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0906', :eg_version);
 
 ALTER FUNCTION evergreen.z3950_attr_name_is_valid (TEXT) STABLE;
 
 \set eg_version '''2.7.4'''
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.4', :eg_version);
+--INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.4', :eg_version);
 
-SELECT evergreen.upgrade_deps_block_check('0908', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0908', :eg_version);
 
 CREATE OR REPLACE FUNCTION vandelay.overlay_bib_record ( import_id BIGINT, eg_id BIGINT, merge_profile_id INT ) RETURNS BOOL AS $$
 DECLARE
@@ -8020,7 +8122,7 @@ END;
 $$ LANGUAGE PLPGSQL;
 
 
-SELECT evergreen.upgrade_deps_block_check('0913', :eg_version);
+--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;
@@ -8042,7 +8144,7 @@ UPDATE actor.org_unit_setting
 SELECT SETVAL('vandelay.merge_profile_id_seq', GREATEST(100, (SELECT MAX(id) FROM vandelay.merge_profile)));
 
 
-SELECT evergreen.upgrade_deps_block_check('0914', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0914', :eg_version);
 
 CREATE OR REPLACE FUNCTION evergreen.lpad_number_substrings( TEXT, TEXT, INT ) RETURNS TEXT AS $$
     my $string = shift;            # Source string
@@ -8066,9 +8168,13 @@ UPDATE asset.call_number_prefix SET id = id;
 UPDATE asset.call_number_suffix SET id = id;
 --Upgrade Script for 2.7.4 to 2.7.5
 \set eg_version '''2.7.5'''
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.5', :eg_version);
+--INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.5', :eg_version);
+
+--SELECT evergreen.upgrade_deps_block_check('0915', :eg_version);
 
-SELECT evergreen.upgrade_deps_block_check('0915', :eg_version);
+DO $$                                                                          
+BEGIN                                                                          
+    IF evergreen.insert_on_deploy() THEN  
 
 INSERT INTO permission.perm_list (id, code, description) 
 VALUES (  
@@ -8093,31 +8199,33 @@ VALUES (
         'description'
     )
 );
+    END IF;                                                                    
+END $$; 
 
 --Upgrade Script for 2.7.5 to 2.7.6
 \set eg_version '''2.7.6'''
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.6', :eg_version);
+--INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.6', :eg_version);
 -- index serial.record_entry.record
 
 
-SELECT evergreen.upgrade_deps_block_check('0917', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0917', :eg_version);
 
 CREATE INDEX serial_record_entry_record_idx ON serial.record_entry ( record );
 
 -- index authority.simple_heading.record so that reingesting
 -- authority records does not require a sequential scan of ash
 
-SELECT evergreen.upgrade_deps_block_check('0918', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0918', :eg_version);
 
 CREATE INDEX authority_simple_heading_record_idx ON authority.simple_heading (record);
 
 
-SELECT evergreen.upgrade_deps_block_check('0919', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0919', :eg_version);
 
 ALTER TABLE acq.acq_lineitem_history DROP CONSTRAINT IF EXISTS acq_lineitem_history_queued_record_fkey;
 
 
-SELECT evergreen.upgrade_deps_block_check('0920', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0920', :eg_version);
 
 -- Clean up holds that will prevent the index on 
 -- current_copy from being created.
@@ -8189,7 +8297,7 @@ CREATE UNIQUE INDEX
 
 --Upgrade Script for 2.7.6 to 2.7.7
 \set eg_version '''2.7.7'''
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.7', :eg_version);
+--INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.7', :eg_version);
 -- Evergreen DB patch 0924.schema.rank_cp_visibility.sql
 --
 -- rank_cp() is meant to return the most-available copies, so it needs to
@@ -8197,7 +8305,7 @@ INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.7', :eg_versio
 --
 
 -- check whether patch can be applied
-SELECT evergreen.upgrade_deps_block_check('0924', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0924', :eg_version);
 
 -- function is being expanded and renamed, so drop the old version
 DROP FUNCTION IF EXISTS evergreen.rank_cp_status(INT);
@@ -8398,7 +8506,7 @@ CREATE OR REPLACE FUNCTION unapi.acn ( obj_id BIGINT, format TEXT,  ename TEXT,
 $F$ LANGUAGE SQL STABLE;
 
 
-SELECT evergreen.upgrade_deps_block_check('0925', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0925', :eg_version);
 
 CREATE OR REPLACE FUNCTION evergreen.limit_oustl() RETURNS TRIGGER AS $oustl_limit$
     BEGIN
@@ -8422,7 +8530,7 @@ CREATE TRIGGER limit_logs_oust
     FOR EACH ROW EXECUTE PROCEDURE limit_oustl();
 
 
-SELECT evergreen.upgrade_deps_block_check('0926', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0926', :eg_version);
 
 CREATE OR REPLACE FUNCTION acq.copy_fund_tags(
         old_fund_id INTEGER,
@@ -8739,7 +8847,7 @@ $$ LANGUAGE plpgsql;
 
 
 
-SELECT evergreen.upgrade_deps_block_check('0927', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0927', :eg_version);
 
 CREATE OR REPLACE VIEW extend_reporter.full_circ_count AS
    SELECT cp.id,
@@ -8752,7 +8860,7 @@ CREATE OR REPLACE VIEW extend_reporter.full_circ_count AS
 -- work
 
 
-SELECT evergreen.upgrade_deps_block_check('0936', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0936', :eg_version);
 
 CREATE OR REPLACE FUNCTION metabib.reingest_record_attributes (rid BIGINT, pattr_list TEXT[] DEFAULT NULL, prmarc TEXT DEFAULT NULL, rdeleted BOOL DEFAULT TRUE) RETURNS VOID AS $func$
 DECLARE
@@ -8968,7 +9076,7 @@ END;
 $func$ LANGUAGE PLPGSQL;
 
 
-SELECT evergreen.upgrade_deps_block_check('0940', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0940', :eg_version);
 
 CREATE OR REPLACE FUNCTION evergreen.pg_statistics (tab TEXT, col TEXT) RETURNS TABLE(element TEXT, frequency INT) AS $$
 BEGIN
@@ -9004,9 +9112,9 @@ $$ LANGUAGE PLPGSQL STABLE;
 
 --Upgrade Script for 2.7.7 to 2.7.8
 \set eg_version '''2.7.8'''
-INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.8', :eg_version);
+--INSERT INTO config.upgrade_log (version, applied_to) VALUES ('2.7.8', :eg_version);
 
-SELECT evergreen.upgrade_deps_block_check('0941', :eg_version);
+--SELECT evergreen.upgrade_deps_block_check('0941', :eg_version);
 
 UPDATE authority.control_set_authority_field SET sf_list = REGEXP_REPLACE( sf_list, 'e', '', 'i') WHERE tag = '100' AND control_set = 1 AND  sf_list ILIKE '%e%';