Yoan Bozhilov
aa5f45cecd
fix(taskprocessing): claim tasks atomically with SKIP LOCKED + composite index
...
Replace the worker retry/ignore-list claim-loop with a single atomic
SELECT ... FOR UPDATE SKIP LOCKED claim (SQLite bounded-retry fallback),
preserving the no-duplicate guarantee while removing the thundering-herd
contention that throttled backlog draining. Add a (status,type,last_updated)
index via the table-creating migration + db:add-missing-indices listener.
Signed-off-by: Yoan Bozhilov <bygadd@gmail.com >
Assisted-by: Claude Code:claude-opus-4-8
2026-06-17 19:00:53 +02:00
..
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-02-12 11:25:55 +01:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-02-12 11:25:55 +01:00
2026-06-17 19:00:53 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-02-12 11:25:55 +01:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2026-04-28 21:29:28 +02:00
2025-09-03 13:32:40 -01:00
2026-02-12 11:25:55 +01:00
2026-04-28 21:29:28 +02:00
2026-02-12 11:25:55 +01:00
2026-04-28 21:29:28 +02:00
2026-02-12 11:25:55 +01:00
2026-02-12 11:25:55 +01:00
2026-04-28 21:29:28 +02:00
2026-02-12 11:25:55 +01:00
2026-04-28 21:29:28 +02:00
2026-04-23 14:13:58 +02:00
2026-04-28 21:29:28 +02:00
2026-03-18 15:50:38 +01:00
2026-04-23 14:13:58 +02:00
2026-05-29 10:16:03 +02:00
2026-05-29 10:16:03 +02:00