-
Notifications
You must be signed in to change notification settings - Fork 11
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Re-add trigger that checks if max-sequence-number on journal_persiste…
…nce_ids is bigger, before updating the table.
- Loading branch information
Showing
8 changed files
with
133 additions
and
10 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
18 changes: 18 additions & 0 deletions
18
scripts/migration-0.6.0/4-create-function-check-persistence-id-max-sequence.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
-- replace schema value if required | ||
CREATE OR REPLACE FUNCTION public.check_persistence_id_max_sequence_number() RETURNS TRIGGER AS | ||
$$ | ||
DECLARE | ||
-- replace with appropriate values | ||
jpi_max_sequence_number_column CONSTANT TEXT := 'max_sequence_number'; | ||
|
||
-- variables | ||
sql TEXT; | ||
BEGIN | ||
sql := 'IF NEW.' || jpi_max_sequence_number_column || ' <= OLD.' || jpi_max_sequence_number_column || ' THEN | ||
RAISE EXCEPTION ''New max_sequence_number not higher than previous value''; | ||
END IF;'; | ||
|
||
EXECUTE sql USING NEW; | ||
RETURN NEW; | ||
END; | ||
$$ LANGUAGE plpgsql; |
19 changes: 19 additions & 0 deletions
19
scripts/migration-0.6.0/5-create-trigger-check-persistence-id-max-sequence.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
DO $$ | ||
DECLARE | ||
-- replace with appropriate values | ||
schema CONSTANT TEXT := 'public'; | ||
jpi_table_name CONSTANT TEXT := 'journal_persistence_ids'; | ||
|
||
-- variables | ||
jpi_table TEXT; | ||
sql TEXT; | ||
BEGIN | ||
jpi_table := schema || '.' || jpi_table_name; | ||
|
||
sql := 'CREATE TRIGGER trig_check_persistence_id_max_sequence_number | ||
BEFORE UPDATE ON ' || jpi_table || ' FOR EACH ROW | ||
EXECUTE PROCEDURE ' || schema || '.check_persistence_id_max_sequence_number()'; | ||
|
||
EXECUTE sql; | ||
END ; | ||
$$ LANGUAGE plpgsql; |