[open-ils-commits] [GIT] Evergreen ILS branch master updated. 88e32ab4c8758750a9ccae51ad4fcdd212082292

Evergreen Git git at git.evergreen-ils.org
Tue Aug 18 22:23:53 EDT 2015


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Evergreen ILS".

The branch, master has been updated
       via  88e32ab4c8758750a9ccae51ad4fcdd212082292 (commit)
       via  34337bda97bb667dd06b3c90c539e60b58530ebe (commit)
      from  5db238d962d56cbbfd2cb172e617dd58d73c2107 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 88e32ab4c8758750a9ccae51ad4fcdd212082292
Author: Ben Shum <bshum at biblio.org>
Date:   Tue Aug 18 22:22:42 2015 -0400

    LP#1450561: Stamping upgrade script for library settings editor history limits
    
    Signed-off-by: Ben Shum <bshum at biblio.org>

diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql
index 71d46ae..93f283f 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 ('0924', :eg_version); -- dbwells/stomproj/bshum
+INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0925', :eg_version); -- dyrcona/bshum
 
 CREATE TABLE config.bib_source (
 	id		SERIAL	PRIMARY KEY,
diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.lmit_logs_oust-create.sql b/Open-ILS/src/sql/Pg/upgrade/0925.limit_logs_oust-create.sql
similarity index 93%
rename from Open-ILS/src/sql/Pg/upgrade/XXXX.lmit_logs_oust-create.sql
rename to Open-ILS/src/sql/Pg/upgrade/0925.limit_logs_oust-create.sql
index e7cfb05..0343ca6 100644
--- a/Open-ILS/src/sql/Pg/upgrade/XXXX.lmit_logs_oust-create.sql
+++ b/Open-ILS/src/sql/Pg/upgrade/0925.limit_logs_oust-create.sql
@@ -1,6 +1,6 @@
 BEGIN;
 
---SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version);
+SELECT evergreen.upgrade_deps_block_check('0925', :eg_version);
 
 CREATE OR REPLACE FUNCTION evergreen.limit_oustl() RETURNS TRIGGER AS $oustl_limit$
     BEGIN

commit 34337bda97bb667dd06b3c90c539e60b58530ebe
Author: Jason Stephenson <jstephenson at mvlc.org>
Date:   Fri May 1 15:33:05 2015 -0400

    LP 1450561: Restore org. unit settings history limit function and trigger
    
    The evergreen.limit_oustl function and the limit_log_oustl trigger on
    config.org_unit_setting_type_log were missed in the upgrade scripts
    when these were added to the base schema.  This commit adds them and a
    pgtap test to check that they exist after.
    
    This commit also alters the body of the limit_oustl function to take into
    account of the org unit when deleting entries from the log table.  This
    change allows multiple consortium members to have their own five history
    entries.  The original code only kept the last five entries of any given
    setting across the whole installation.
    
    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>
    Signed-off-by: Ben Shum <bshum at biblio.org>

diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql
index 436b66a..71d46ae 100644
--- a/Open-ILS/src/sql/Pg/002.schema.config.sql
+++ b/Open-ILS/src/sql/Pg/002.schema.config.sql
@@ -960,11 +960,11 @@ in actor.org_unit_setting, allowing for mistakes to be undone.
 This is NOT meant to be an auditor, but rather an undo/redo.
 $$;
 
-CREATE OR REPLACE FUNCTION limit_oustl() RETURNS TRIGGER AS $oustl_limit$
+CREATE OR REPLACE FUNCTION evergreen.limit_oustl() RETURNS TRIGGER AS $oustl_limit$
     BEGIN
         -- Only keeps the most recent five settings changes.
-        DELETE FROM config.org_unit_setting_type_log WHERE field_name = NEW.field_name AND date_applied NOT IN 
-        (SELECT date_applied FROM config.org_unit_setting_type_log WHERE field_name = NEW.field_name ORDER BY date_applied DESC LIMIT 4);
+        DELETE FROM config.org_unit_setting_type_log WHERE field_name = NEW.field_name AND org = NEW.org AND date_applied NOT IN 
+        (SELECT date_applied FROM config.org_unit_setting_type_log WHERE field_name = NEW.field_name AND org = NEW.org ORDER BY date_applied DESC LIMIT 4);
         
         IF (TG_OP = 'UPDATE') THEN
             RETURN NEW;
diff --git a/Open-ILS/src/sql/Pg/t/lp1450561-limit_oustl.pg b/Open-ILS/src/sql/Pg/t/lp1450561-limit_oustl.pg
new file mode 100644
index 0000000..ed5b78a
--- /dev/null
+++ b/Open-ILS/src/sql/Pg/t/lp1450561-limit_oustl.pg
@@ -0,0 +1,12 @@
+BEGIN;
+
+SELECT plan(2);
+
+SELECT can('evergreen', ARRAY['limit_oustl'], 'evergreen.limit_oustl function exists');
+
+SELECT has_trigger('config', 'org_unit_setting_type_log', 'limit_logs_oust',
+       'config.org_unit_setting_type_log limit_logs_oust trigger exists');
+
+SELECT * FROM finish();
+
+ROLLBACK;
diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.lmit_logs_oust-create.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.lmit_logs_oust-create.sql
new file mode 100644
index 0000000..e7cfb05
--- /dev/null
+++ b/Open-ILS/src/sql/Pg/upgrade/XXXX.lmit_logs_oust-create.sql
@@ -0,0 +1,26 @@
+BEGIN;
+
+--SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version);
+
+CREATE OR REPLACE FUNCTION evergreen.limit_oustl() RETURNS TRIGGER AS $oustl_limit$
+    BEGIN
+        -- Only keeps the most recent five settings changes.
+        DELETE FROM config.org_unit_setting_type_log WHERE field_name = NEW.field_name AND org = NEW.org AND date_applied NOT IN 
+        (SELECT date_applied FROM config.org_unit_setting_type_log WHERE field_name = NEW.field_name AND org = NEW.org ORDER BY date_applied DESC LIMIT 4);
+        
+        IF (TG_OP = 'UPDATE') THEN
+            RETURN NEW;
+        ELSIF (TG_OP = 'INSERT') THEN
+            RETURN NEW;
+        END IF;
+        RETURN NULL;
+    END;
+$oustl_limit$ LANGUAGE plpgsql;
+
+DROP TRIGGER IF EXISTS limit_logs_oust ON config.org_unit_setting_type_log;
+
+CREATE TRIGGER limit_logs_oust
+    BEFORE INSERT OR UPDATE ON config.org_unit_setting_type_log
+    FOR EACH ROW EXECUTE PROCEDURE limit_oustl();
+
+COMMIT;

-----------------------------------------------------------------------

Summary of changes:
 Open-ILS/src/sql/Pg/002.schema.config.sql          |    8 +++---
 Open-ILS/src/sql/Pg/t/lp1450561-limit_oustl.pg     |   12 +++++++++
 .../sql/Pg/upgrade/0925.limit_logs_oust-create.sql |   26 ++++++++++++++++++++
 3 files changed, 42 insertions(+), 4 deletions(-)
 create mode 100644 Open-ILS/src/sql/Pg/t/lp1450561-limit_oustl.pg
 create mode 100644 Open-ILS/src/sql/Pg/upgrade/0925.limit_logs_oust-create.sql


hooks/post-receive
-- 
Evergreen ILS


More information about the open-ils-commits mailing list