From ca422132c8f739f3ee873046a3f59d80f2462152 Mon Sep 17 00:00:00 2001 From: Vika Date: Sun, 9 Jul 2023 18:25:58 +0300 Subject: webmentions/queue: give up on an item after 5 attempts This also involves a crude "async drop" implementation that fires a future incrementing an attempt if a Job has been dropped without marking it as done. --- kittybox-rs/migrations/0002_webmention_queue.sql | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'kittybox-rs/migrations') diff --git a/kittybox-rs/migrations/0002_webmention_queue.sql b/kittybox-rs/migrations/0002_webmention_queue.sql index 0b95771..708933b 100644 --- a/kittybox-rs/migrations/0002_webmention_queue.sql +++ b/kittybox-rs/migrations/0002_webmention_queue.sql @@ -1,10 +1,13 @@ -CREATE TABLE incoming_webmention_queue ( +CREATE TABLE kittybox.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() + recv_timestamp TIMESTAMPTZ NOT NULL DEFAULT now(), + attempts INTEGER NOT NULL DEFAULT 0 ); +CREATE INDEX webmention_jobs_by_attempts ON kittybox.incoming_webmention_queue (attempts); + CREATE RULE notify_incoming_webmention AS -ON INSERT TO incoming_webmention_queue +ON INSERT TO kittybox.incoming_webmention_queue DO ALSO NOTIFY incoming_webmention; -- cgit 1.4.1