From df3f9e147c591a57b869dc5b81b5edd0e52b9bf6 Mon Sep 17 00:00:00 2001 From: Florian Date: Sun, 1 Nov 2026 17:41:56 +0100 Subject: [PATCH] Added transaction protection --- src/main.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main.py b/src/main.py index 0b6eb85..6a8d271 100644 --- a/src/main.py +++ b/src/main.py @@ -359,7 +359,7 @@ def delete_feed( try: with db.cursor() as cursor: cursor.execute( - "SELECT id FROM rss_feeds WHERE rss_feed = %s", + "SELECT id FROM rss_feeds WHERE rss_feed = %s FOR UPDATE", (url,), ) known = cursor.fetchone() @@ -377,7 +377,7 @@ def delete_feed( cursor.execute( "SELECT 1 from rss_feed_subscriptions " - "WHERE rss_feed_id = %s AND active = 1 LIMIT 1", + "WHERE rss_feed_id = %s AND active = 1 LIMIT 1 FOR SHARE", (feed_id,), ) if cursor.fetchone() is None: