2.5 DB; log big updates; avoid big selects
authorBill Erickson <berickxx@gmail.com>
Tue, 31 Mar 2015 19:04:40 +0000 (15:04 -0400)
committerBill Erickson <berickxx@gmail.com>
Thu, 21 Mar 2019 19:46:23 +0000 (15:46 -0400)
Signed-off-by: Bill Erickson <berickxx@gmail.com>
KCLS/sql/jbas-495/jbas-495-2.4.1-2.5.7-upgrade.sql

index 241a61b..ff3f2af 100644 (file)
@@ -1,9 +1,11 @@
 BEGIN;
 
+\set ON_ERROR_STOP on
+SET statement_timeout = 0;
+
 /*
 KCLS upgrade tasks to run before 2.4.1-2.4.2-upgrade-db.sql
 */
-\set ON_ERROR_STOP on
 
 /*
 In this section, change object schemas to match the community code.
@@ -926,6 +928,7 @@ BEGIN
         RAISE NOTICE 'Cannot bump config.metabib_field.id from % to %; the target ID already exists.', v_source, target_id;
         RETURN 0;
     END IF;
+    RAISE NOTICE 'Updating values for config.metabib_field % => %', v_source, target_id;
     UPDATE config.metabib_field SET id = target_id WHERE id = v_source;
     EXECUTE ' UPDATE metabib.' || f_class || '_field_entry SET field = ' || target_id || ' WHERE field = ' || v_source;
     UPDATE config.metabib_field_ts_map SET metabib_field = target_id WHERE metabib_field = v_source;
@@ -942,9 +945,13 @@ BEGIN
 END;
 $func$ LANGUAGE PLPGSQL;
 
-SELECT config.modify_metabib_field(id, NULL)
-    FROM config.metabib_field
-    WHERE id > 31; -- KCLS: 31 already back-ported
+DO $$
+BEGIN
+    -- PERFORM instead of SELECT to avoid echoing millions of 1's
+    PERFORM config.modify_metabib_field(id, NULL)
+        FROM config.metabib_field
+        WHERE id > 31; -- KCLS: 31 already back-ported
+END $$;
 
 SELECT SETVAL('config.metabib_field_id_seq', GREATEST(1000, (SELECT MAX(id) FROM config.metabib_field)));