about summary refs log tree commit diff
path: root/kittybox-rs/migrations/webmention
diff options
context:
space:
mode:
authorVika <vika@fireburn.ru>2023-07-21 17:43:01 +0300
committerVika <vika@fireburn.ru>2023-07-21 17:43:01 +0300
commitf34c2a2c95559bcb2d068abd611fff5cc677f159 (patch)
tree84aad5a16c950d9c1f55ac2252952b5e5bddb05a /kittybox-rs/migrations/webmention
parentf13c60b70e1d9435b5f2803fc48c44eed7be761c (diff)
downloadkittybox-f34c2a2c95559bcb2d068abd611fff5cc677f159.tar.zst
Split Postgres schemas into two
Now the postgres schemas are completely independent of each
other. This took a while to figure out!
Diffstat (limited to 'kittybox-rs/migrations/webmention')
-rw-r--r--kittybox-rs/migrations/webmention/0001_init.sql15
1 files changed, 15 insertions, 0 deletions
diff --git a/kittybox-rs/migrations/webmention/0001_init.sql b/kittybox-rs/migrations/webmention/0001_init.sql
new file mode 100644
index 0000000..9e7a192
--- /dev/null
+++ b/kittybox-rs/migrations/webmention/0001_init.sql
@@ -0,0 +1,15 @@
+CREATE SCHEMA IF NOT EXISTS kittybox_webmention;
+
+CREATE TABLE kittybox_webmention.incoming_webmention_queue (
+       id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
+       source TEXT NOT NULL,
+       target TEXT NOT NULL,
+       recv_timestamp TIMESTAMPTZ NOT NULL DEFAULT now(),
+       attempts INTEGER NOT NULL DEFAULT 0
+);
+
+CREATE INDEX webmention_jobs_by_attempts ON kittybox_webmention.incoming_webmention_queue (attempts);
+
+CREATE RULE notify_incoming_webmention AS
+ON INSERT TO kittybox_webmention.incoming_webmention_queue
+DO ALSO NOTIFY incoming_webmention;