[open-ils-commits] [GIT] Evergreen ILS branch rel_2_10 updated. 81e98153c39ce84c2a5b681994c3147181a19b49

Evergreen Git git at git.evergreen-ils.org
Fri Mar 4 11:34:09 EST 2016


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, rel_2_10 has been updated
       via  81e98153c39ce84c2a5b681994c3147181a19b49 (commit)
       via  5571be5f6edca81e4026b0403df40a2117b92a38 (commit)
      from  461d36ba0d9c72505493f20976150d95716ea0e7 (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 81e98153c39ce84c2a5b681994c3147181a19b49
Author: Jason Stephenson <jstephenson at mvlc.org>
Date:   Fri Mar 4 11:31:06 2016 -0500

    LP 1533331: Stamping upgrade script.
    
    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>

diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql
index 915ffbe..8d6b9cd 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 ('0970', :eg_version); -- Dyrcona/gmcharlt
+INSERT INTO config.upgrade_log (version, applied_to) VALUES ('0971', :eg_version); -- csharp/Dyrcona
 
 CREATE TABLE config.bib_source (
 	id		SERIAL	PRIMARY KEY,
diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.fix_protect_reserved_rows_from_delete.sql b/Open-ILS/src/sql/Pg/upgrade/0971.schema.fix_protect_reserved_rows_from_delete.sql
similarity index 82%
rename from Open-ILS/src/sql/Pg/upgrade/XXXX.schema.fix_protect_reserved_rows_from_delete.sql
rename to Open-ILS/src/sql/Pg/upgrade/0971.schema.fix_protect_reserved_rows_from_delete.sql
index 6a527a9..56d6fc3 100644
--- a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.fix_protect_reserved_rows_from_delete.sql
+++ b/Open-ILS/src/sql/Pg/upgrade/0971.schema.fix_protect_reserved_rows_from_delete.sql
@@ -1,6 +1,6 @@
 BEGIN;
 
-SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version);
+SELECT evergreen.upgrade_deps_block_check('0971', :eg_version);
 
 CREATE OR REPLACE FUNCTION evergreen.protect_reserved_rows_from_delete() RETURNS trigger AS $protect_reserved$
 BEGIN

commit 5571be5f6edca81e4026b0403df40a2117b92a38
Author: Chris Sharp <csharp at georgialibraries.org>
Date:   Mon Feb 8 13:00:06 2016 -0500

    LP#1533331 - Fix evergreen.protect_reserved_rows_from_delete() trigger function
    
    The fix for bug 1513554 included creating a general trigger function to prevent
    the deletion of reserved table rows with an ID lower than a specified threshold.
    Testing for that seemed to pass muster, but using the function in practice revealed
    a failure to delete deletable rows either.
    
    This adds an explicit RETURN to the function, which fixes the issue.
    
    Signed-off-by: Chris Sharp <csharp at georgialibraries.org>
    Signed-off-by: Jason Stephenson <jstephenson at mvlc.org>

diff --git a/Open-ILS/src/sql/Pg/000.functions.general.sql b/Open-ILS/src/sql/Pg/000.functions.general.sql
index 0cfa909..ad6182e 100644
--- a/Open-ILS/src/sql/Pg/000.functions.general.sql
+++ b/Open-ILS/src/sql/Pg/000.functions.general.sql
@@ -81,6 +81,7 @@ BEGIN
 IF OLD.id < TG_ARGV[0]::INT THEN
     RAISE EXCEPTION 'Cannot delete row with reserved ID %', OLD.id;
 END IF;
+RETURN OLD;
 END
 $protect_reserved$
 LANGUAGE plpgsql;
diff --git a/Open-ILS/src/sql/Pg/t/lp1513554_do_not_delete_reserved_cancel_reasons.pg b/Open-ILS/src/sql/Pg/t/lp1513554_do_not_delete_reserved_cancel_reasons.pg
index 8042860..7dedeb2 100644
--- a/Open-ILS/src/sql/Pg/t/lp1513554_do_not_delete_reserved_cancel_reasons.pg
+++ b/Open-ILS/src/sql/Pg/t/lp1513554_do_not_delete_reserved_cancel_reasons.pg
@@ -1,6 +1,6 @@
 BEGIN;
 
-SELECT plan(1);
+SELECT plan(3);
 
 SELECT throws_ok(
     'delete from acq.cancel_reason where id = 1', 
@@ -8,6 +8,16 @@ SELECT throws_ok(
     'Cannot delete row with reserved ID 1'
 );
 
+SELECT lives_ok(
+    'insert into acq.cancel_reason (id, org_unit, label, description) values (3001, 1, ''Test Reason'', ''Test Cancel Reason'')',
+    'Creating test cancel reason'
+);
+
+SELECT lives_ok(
+    'delete from acq.cancel_reason where id = 3001',
+    'Testing delete of non-reserved cancel reason'
+);
+
 SELECT * FROM finish();
 
 ROLLBACK;
diff --git a/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.fix_protect_reserved_rows_from_delete.sql b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.fix_protect_reserved_rows_from_delete.sql
new file mode 100644
index 0000000..6a527a9
--- /dev/null
+++ b/Open-ILS/src/sql/Pg/upgrade/XXXX.schema.fix_protect_reserved_rows_from_delete.sql
@@ -0,0 +1,15 @@
+BEGIN;
+
+SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version);
+
+CREATE OR REPLACE FUNCTION evergreen.protect_reserved_rows_from_delete() RETURNS trigger AS $protect_reserved$
+BEGIN
+IF OLD.id < TG_ARGV[0]::INT THEN
+    RAISE EXCEPTION 'Cannot delete row with reserved ID %', OLD.id; 
+END IF;
+RETURN OLD;
+END
+$protect_reserved$
+LANGUAGE plpgsql;
+
+COMMIT;

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

Summary of changes:
 Open-ILS/src/sql/Pg/000.functions.general.sql      |    1 +
 Open-ILS/src/sql/Pg/002.schema.config.sql          |    2 +-
 ...513554_do_not_delete_reserved_cancel_reasons.pg |   12 +++++++++++-
 ...chema.fix_protect_reserved_rows_from_delete.sql |   15 +++++++++++++++
 4 files changed, 28 insertions(+), 2 deletions(-)
 create mode 100644 Open-ILS/src/sql/Pg/upgrade/0971.schema.fix_protect_reserved_rows_from_delete.sql


hooks/post-receive
-- 
Evergreen ILS


More information about the open-ils-commits mailing list