Skip to content

fix: reclaim pending messages after empty stream reads - #142

Open
adrian-dankiv-webflow wants to merge 1 commit into
taskiq-python:mainfrom
adrian-dankiv-webflow:fix/reclaim-idle-streams
Open

adrian-dankiv-webflow wants to merge 1 commit into
taskiq-python:mainfrom
adrian-dankiv-webflow:fix/reclaim-idle-streams

Conversation

@adrian-dankiv-webflow

Copy link
Copy Markdown

An empty XREADGROUP poll must still reach XAUTOCLAIM. Since #125, the early continue skips reclaim whenever no new messages arrive. A worker can die with a pending message and replacement workers never recover it until a fresh task is enqueued.

Remove the early continue and add a regression test that seeds an eligible pending message without enqueuing any fresh work. The claim transaction and release-before-yield behavior from #126 remain unchanged.

Validation: the added regression test passes locally against Redis 7 with redis-py 8.1 and Python 3.14. Two integration checks also pass with this exact two-line patch: idle-stream recovery and lock release before delivery. An idle-stream probe reproduces the failure on stock 1.2.4. Upstream CI remains pending.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant