From e49323e99fafa302655255cd371f0c82d5d65eaa Mon Sep 17 00:00:00 2001 From: Michael Hoennig Date: Mon, 6 May 2019 19:12:12 +0200 Subject: [PATCH] UserRoleAssignment historicization --- ...6185600_constraints_UserRoleAssignment.xml | 14 +++ .../historicization_UserRoleAssignment.xml | 87 +++++++++++++++++++ .../resources/config/liquibase/master.xml | 4 + 3 files changed, 105 insertions(+) create mode 100644 src/main/resources/config/liquibase/changelog/20190506185600_constraints_UserRoleAssignment.xml create mode 100644 src/main/resources/config/liquibase/historicization/historicization_UserRoleAssignment.xml diff --git a/src/main/resources/config/liquibase/changelog/20190506185600_constraints_UserRoleAssignment.xml b/src/main/resources/config/liquibase/changelog/20190506185600_constraints_UserRoleAssignment.xml new file mode 100644 index 00000000..2a0e4ec1 --- /dev/null +++ b/src/main/resources/config/liquibase/changelog/20190506185600_constraints_UserRoleAssignment.xml @@ -0,0 +1,14 @@ + + + + + + + + + + diff --git a/src/main/resources/config/liquibase/historicization/historicization_UserRoleAssignment.xml b/src/main/resources/config/liquibase/historicization/historicization_UserRoleAssignment.xml new file mode 100644 index 00000000..b5d55fdd --- /dev/null +++ b/src/main/resources/config/liquibase/historicization/historicization_UserRoleAssignment.xml @@ -0,0 +1,87 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + CREATE TRIGGER user_role_assignment_historicize + AFTER INSERT OR DELETE OR UPDATE ON user_role_assignment + FOR EACH ROW EXECUTE PROCEDURE historicize(); + + + DROP TRIGGER user_role_assignment_historicize + + + + + + SELECT * + FROM user_role_assignment_history + WHERE history_id IN ( + SELECT max(history_id) AS history_id + FROM user_role_assignment_history + WHERE history_transaction <= current_setting('history.transaction')::bigint + GROUP BY entity_type_id, entity_object_id, assigned_role, user_id) + + + + diff --git a/src/main/resources/config/liquibase/master.xml b/src/main/resources/config/liquibase/master.xml index 9842d7a3..bc1ac640 100644 --- a/src/main/resources/config/liquibase/master.xml +++ b/src/main/resources/config/liquibase/master.xml @@ -22,8 +22,12 @@ + + + +