[open-ils-commits] [GIT] Evergreen ILS branch rel_2_9 updated. ce835a3ac9a7e4e294d7f55f24aa2c23cc34b338

Evergreen Git git at git.evergreen-ils.org
Fri Mar 4 11:35:27 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_9 has been updated
       via  ce835a3ac9a7e4e294d7f55f24aa2c23cc34b338 (commit)
       via  c3b95afaad2d3ceb5a8e31607be6e5c4bea0d499 (commit)
      from  3e2179e781d1c2440524439f4287b4c31b9a8825 (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 ce835a3ac9a7e4e294d7f55f24aa2c23cc34b338
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>
    
    Conflicts:
    	Open-ILS/src/sql/Pg/002.schema.config.sql

diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql
index 47b7427..c8136b5 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 ('0959', :eg_version); -- csharp/dbwells
+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 c3b95afaad2d3ceb5a8e31607be6e5c4bea0d499
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