-
-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Description
Summary
Advisory lock key derivation uses raw concurrency_key (or task id string) without queue namespace.
Why this is a problem
Different queues using the same concurrency key can unintentionally contend on the same advisory lock, causing cross-queue interference.
Evidence
- Lock key returns only
concurrency_keyortask_id:src/queue.rs:1797 - Lock acquisition hashes that single key globally:
src/queue.rs:1811
Expected behavior
Concurrency controls should be isolated per queue unless global coordination is intentionally requested.
Proposed direction
- Namespace lock key with queue name (e.g.
"{queue}:{key}"). - Optionally support explicit global key mode separately.
Acceptance criteria
- Two tasks in different queues with same concurrency key do not block each other by default.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels