[Bug]: Rust Worker never recovers from a dropped Redis connection
Author: willrnchCreated Sep 13, 2026Updated Sep 13, 2026
Labelsbug
Version
1.2.9
Platform
rust
What happened?
In the Rust client, every Redis connection (Worker, Queue, QueueEvents) is a bare redis::aio::MultiplexedConnection. Once the underlying socket dies (network blip, Redis restart), redis-rs never reconnects it on its own. Every subsequent command on that connection fails forever, and the worker silently stops fetching/processing jobs until the process is manually restarted. There's no automatic recovery path.
How to reproduce.
- Create a worker
- Push some job to the queue
- Witness that the worker processes the jobs
- Restart redis
- Push more job
- Witness that the worker doesn't process any job and doesn't throw any error
Code of Conduct
- I agree to follow this project's Code of Conduct
Fix implemented here: https://github.com/willrnch/bullmq/commit/98b6b642b0ecbd75bf9381ffb2d574f57f148340
I'm not allowed to create a PR here.
Source: taskforcesh/bullmq