LP#1690418 Action/trigger complete_time back-fill user/berick/lp1690418-at-event-set-complete
authorBill Erickson <berickxx@gmail.com>
Fri, 12 May 2017 17:46:49 +0000 (13:46 -0400)
committerBill Erickson <berickxx@gmail.com>
Fri, 12 May 2017 17:46:51 +0000 (13:46 -0400)
Set trigger event complete_time equal to its update_time for completed
events that have no complete time.

As noted in the SQL, this could be a very large update.

Signed-off-by: Bill Erickson <berickxx@gmail.com>
Open-ILS/src/sql/Pg/upgrade/XXXX.data.action-trigger-complete-time.sql [new file with mode: 0644]

diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.data.action-trigger-complete-time.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.data.action-trigger-complete-time.sql
new file mode 100644 (file)
index 0000000..2c8ed1b
--- /dev/null
@@ -0,0 +1,18 @@
+BEGIN; -- needed?
+
+-- NOTE: This could be a very large update, affecting millions of rows.
+-- It should be exectued as a separate part of any version upgrade scripts,
+-- running outside of the main transaction.
+
+-- SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version);
+
+\qecho
+\qecho Setting action_trigger.event.complete_time.  
+\qecho This could affect many rows and take a while to run.
+\qecho
+
+UPDATE action_trigger.event 
+    SET complete_time = update_time 
+    WHERE state = 'complete' AND complete_time IS NULL;
+
+COMMIT;