Batch task completion and failure transitions
- Dominant language
- Rust
- Stars
- 21
- Forks
- 1
- Avg merge
- 10h 30m
- Merged PRs (30d)
- 20
Description
Each finished handler currently performs its own PostgreSQL round trip for `complete_task` or `fail_task`. Add lease-fenced batch SQL functions and a bounded worker micro-batcher that flushes by size or a short deadline without weakening result notifications, retry behavior, shutdown, or lease-loss handling.
Measure drain throughput, tail latency, transactions, and WAL before and after.
Contributor guide
Research direction
Start by locating the handlers that issue complete_task and fail_task, the corresponding PostgreSQL functions, and the worker shutdown and lease-loss paths. Measure baseline drain throughput, tail latency, transaction count, and WAL, then define bounded size/deadline flushing while preserving notifications, retries, shutdown, and lease fencing. Done means the batched path improves the requested measurements without changing those behaviors.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- postgresql, rust
- Domain
- backend, databases, performance
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100