git » subscription-tool.git » commit 5c69013

added tracking of deleted subscriptions

author Thorsten Ortlepp
2026-04-09 19:57:49 UTC
committer Thorsten Ortlepp
2026-04-09 19:57:49 UTC
parent c7599fc4829f25558f9f1fc774ecb3f12ce7cacf

added tracking of deleted subscriptions

src/main/resources/db/migration/V1_1__create_table_deletions.sql +21 -0

diff --git a/src/main/resources/db/migration/V1_1__create_table_deletions.sql b/src/main/resources/db/migration/V1_1__create_table_deletions.sql
new file mode 100644
index 0000000..040dd52
--- /dev/null
+++ b/src/main/resources/db/migration/V1_1__create_table_deletions.sql
@@ -0,0 +1,21 @@
+CREATE TABLE deletions (
+  id BIGINT GENERATED ALWAYS AS IDENTITY UNIQUE,
+  mail VARCHAR(255) NOT NULL,
+  registration TIMESTAMP,
+  confirmation TIMESTAMP,
+  deletion TIMESTAMP
+);
+
+CREATE OR REPLACE FUNCTION archive_deleted_subscription()
+RETURNS TRIGGER AS $$
+BEGIN
+  INSERT INTO deletions(mail, registration, confirmation, deletion)
+    VALUES (OLD.mail, OLD.registration, OLD.confirmation, CURRENT_TIMESTAMP);
+  RETURN OLD;
+END;
+$$ LANGUAGE plpgsql;
+
+CREATE TRIGGER after_delete_subscription_trigger
+AFTER DELETE ON subscriptions
+FOR EACH ROW
+EXECUTE FUNCTION archive_deleted_subscription();