Back to feed
Dev.to
Dev.to
7/8/2026
Debugging Stalled Jobs in BullMQ: Causes and Early Detection

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?

Comments

Failed to load comments. Please try again.

Explore more