
Debugging Stalled Jobs in BullMQ: Causes and Early Detection
Original: Debugging Stalled Jobs in BullMQ: What Actually Causes Them and How to Catch Them Early published: false tags: node, redis, bullmq, backend
Short summary
BullMQ stalled jobs occur when a worker goes silent mid-job without completing or failing, leaving the job in limbo until BullMQ's stalled-check interval catches it. Unlike failed jobs, stalled jobs are invisible until they surface as customer complaints, making them more dangerous in time-sensitive flows like payment webhooks or confirmation emails. The article recommends tuning lockDuration and stalledInterval to match actual job runtimes and wiring up alerting on QueueEvents to catch stalls early — while also pitching a monitoring tool called Qcanary.
- •Stalled jobs are invisible until BullMQ's stalled-check interval catches them, unlike failed jobs which are immediately visible
- •Tune lockDuration and stalledInterval to match actual job runtimes rather than guessing
- •Wire up alerting on BullMQ's QueueEvents (stalled, failed, active, completed) to catch issues before customers do
Generated with AI, which can make mistakes.
Is this a good recommendation for you?



