Background job queue backlog: symptoms, cause, and the test that catches it
A job change slows processing and the queue grows faster than it drains.
Background job queue backlog is documented by 3 accepted public reports from 3 organisations, 3 of them published in the last 5 years.
- Likelihood: medium (3 public reports in 5 years)
- Impact: low (2 of 3 reports: degraded)
Symptoms
User-visible
- Scheduled builds started late, up to about forty minutes.[1]
- Jobs waited longer than usual before dispatch to an agent, in some cases more than ten minutes.[1]
- Requests routed to application containers in one United States region saw higher latency and error rates.[2]
- Newly published package versions did not show in the web frontend and could not be installed.[3]
- Emails were delayed and new accounts could not verify their email addresses.[3]
Monitoring-visible
- Worker processes stayed healthy and no deploy failed while recurring scheduling had stopped.[1]
- The work queue of the infrastructure management application built up.[2]
- New router instances showed the wrong boot state and failed readiness checks.[2]
- The central task queue held more than 46K pending tasks, the oldest more than 14 hours old, against under 100 normally.[3]
- Database CPU usage rose in step with the task backlog.[3]
Root causes
- stage: code A routine framework update moved a connection pool library from 2.5.5 to 3.0.2 with a keyword-only API, and three scheduler threads per worker of the job library failed on startup.[1]
- stage: code A dependency upgrade in the infrastructure management application caused a timing lock issue that greatly reduced task worker throughput.[2]
- stage: infra The task workers failed to scale up for the increased workload scheduling, so the work queue built up.[2]
- stage: code A periodic task deployed on 2022-06-23 ran a slow row-counting query every 5 minutes, and its long-running instances used up the workers available for other tasks.[3]
Public examples
- [1]Buildkite, 2026-08-10. A routine Rails update pulled a new major version of connection_pool that Sidekiq could not use; internal Sidekiq scheduler threads stopped on startup, so recurring background work stopped and queued jobs waited longer for dispatch until the library was pinned back. primary Latency on Pipelines
- [2]Heroku, 2022-09-23. A change to the application that manages Common Runtime infrastructure included a dependency upgrade that greatly reduced task worker throughput; the work queue built up, new router instances were not initialised correctly and were deleted, and requests to dynos failed until the change was rolled back. primary Degraded availability
- [3]PyPI, 2022-06-28. A deployed periodic task for 2FA statistics ran a slow row-counting query every 5 minutes; over several days these tasks occupied more of the workers until the central task queue held nearly 50K pending tasks and CDN purges and emails were delayed by more than 14 hours. primary Queue delay affecting CDN purges and emails
Test classes that catch it
| Test class | Stage | Limitation | Basis |
|---|---|---|---|
| Integration tests | pre-deploy | An integration test that only starts a worker passes in report [1], because worker processes stayed healthy while the scheduler threads for recurring work had stopped. | by design analysis |
| Load and performance tests | pre-deploy | A load test that runs for minutes misses the slow periodic query in report [3], whose instances accumulated over several days before the queue held more than 46K tasks. | by design analysis |
| Canary and progressive delivery checks | post-deploy | Canary checks watch request traffic and miss stopped recurring jobs, and in report [1] no deploy failed while scheduled work had halted. | by design analysis |
Risk
- Likelihood: medium (3 public reports in 5 years)
- Impact: low (2 of 3 reports: degraded)
| Accepted public reports | 3 |
|---|---|
| Published in the last 5 years | 3 |
| Impact stated: degraded | 2 |
| Impact stated: availability | 1 |
Pre-release checklist
- PR-01
- PR-02
- PR-03
- PR-04
- PR-05
- PR-06
- PR-07
- PR-08
First 30 minutes
- FM-01
- FM-02
- FM-03
- FM-04
- FM-05
- FM-06
- FM-07
- FM-08
Download the checklist
What catches this: catalogue entries
Listed because their own documentation or site names integration tests, load and performance tests, canary and progressive delivery checks on the verification date. Alphabetical. Not a recommendation.
Tools whose documentation names these test classes
- Argo Rollouts canary source verified 2026-10-21
- Artillery load source verified 2026-10-21
- Drill load source verified 2026-10-21
- Flagger canary source verified 2026-10-21
- Gatling load source verified 2026-10-21
- Grafana k6 load source verified 2026-10-21
- GrowthBook canary source verified 2026-10-21
- hey load source verified 2026-10-21
- Hoverfly integration source verified 2026-10-21
- Karate load source verified 2026-10-21
- Kayenta canary source verified 2026-10-21
- LaunchDarkly canary source verified 2026-10-21
- Locust load source verified 2026-10-21
- oha load source verified 2026-10-21
- Postman integration source verified 2026-10-21 load source verified 2026-10-21
- Serenity BDD integration source verified 2026-10-21
- Spinnaker canary source verified 2026-10-21
- Testcontainers integration source verified 2026-10-21
- TestMu AI (formerly LambdaTest) load source verified 2026-10-21
- TestNG integration source verified 2026-10-21
- Unleash canary source verified 2026-10-21
Providers whose site names these test classes
- 2i load source verified 2026-10-21
- Abstracta load source verified 2026-10-21
- andagon people GmbH load source verified 2026-10-21 integration source verified 2026-10-21
- Appmatics load source verified 2026-10-21 integration source verified 2026-10-21
- AQA Masters load source verified 2026-10-21 integration source verified 2026-10-21
- BugRaptors load source verified 2026-10-21
- Cleverix integration source verified 2026-10-21 load source verified 2026-10-21
- Crestech Software Systems load source verified 2026-10-21 integration source verified 2026-10-21
- Crowdar load source verified 2026-10-21
- DeviQA load source verified 2026-10-21 integration source verified 2026-10-21
- Elinext load source verified 2026-10-21
- Exactpro load source verified 2026-10-21
- Full Scale load source verified 2026-10-21
- Inmetrics load source verified 2026-10-21
- Invensis Technologies load source verified 2026-10-21 integration source verified 2026-10-21
- iScale Solutions load source verified 2026-10-21
- Itekako load source verified 2026-10-21
- iValuePlus Services load source verified 2026-10-21
- Nimble Approach load source verified 2026-10-21
- Outpost QA load source verified 2026-10-21 integration source verified 2026-10-21
- PLATO load source verified 2026-10-21
- Polteq load source verified 2026-10-21
- Q-Centric GmbH integration source verified 2026-10-21
- QA Madness load source verified 2026-10-21 integration source verified 2026-10-21
- QA Mentor load source verified 2026-10-21 integration source verified 2026-10-21
- QASource load source verified 2026-10-21
- QAwerk load source verified 2026-10-21 integration source verified 2026-10-21
- Quality House load source verified 2026-10-21
- Quality Island load source verified 2026-10-21 integration source verified 2026-10-21
- QualityKiosk Technologies load source verified 2026-10-21
- QualityLogic load source verified 2026-10-21
- Saigon Technology load source verified 2026-10-21
- SHIFT ASIA load source verified 2026-10-21
- SimplyTest GmbH load source verified 2026-10-21
- Sofka Technologies load source verified 2026-10-21
- Soflab Technology load source verified 2026-10-21 integration source verified 2026-10-21
- SQA - Software Quality Assurance S.A. integration source verified 2026-10-21 load source verified 2026-10-21
- SunTec India load source verified 2026-10-21 integration source verified 2026-10-21
- T2S Tecnologia load source verified 2026-10-21
- TestFort load source verified 2026-10-21 integration source verified 2026-10-21
- Testhouse load source verified 2026-10-21 integration source verified 2026-10-21
- Testing IT load source verified 2026-10-21 integration source verified 2026-10-21
- TestMatick load source verified 2026-10-21 integration source verified 2026-10-21
- Testrig Technologies load source verified 2026-10-21
- Testscenario load source verified 2026-10-21 integration source verified 2026-10-21
- TestSolutions GmbH load source verified 2026-10-21
- VTEST load source verified 2026-10-21
- Zoonou load source verified 2026-10-21 integration source verified 2026-10-21
Only on this page
In report [1], background job queue backlog took 15 minutes to detect. The library change merged at 04:33 UTC and rollout began at 04:40. Monitoring alerted at 04:48, eight minutes after rollout. The change was identified at 04:59, and the library was pinned back to 2.5.5.
Report [3] and report [2] show slower paths to notice. In report [3], the periodic task was deployed on 2022-06-23, users reported delays for about 12 hours, and admins confirmed the backlog at 15:43 UTC on 2022-06-27. In report [2], incorrectly configured alerts delayed notice that new router instances were not initialised, and engineering was notified when routing availability dropped at about 21:54 UTC.
Related incidents
- Connection pool exhausted A new code path leaks or holds connections and the pool runs out under load.
- Memory leak in new release Memory grows per request or per screen until processes restart or the app is killed.
- Thundering herd on restart Clients reconnect simultaneously after a rolling restart and overload a dependency.
- Cache invalidation storm A deploy flushes or invalidates caches at once and origin load spikes.
- Third-party rate limit hit A new call pattern exceeds a provider's quota and requests are rejected.
Questions
What causes background job queue backlog?
All three accepted reports name a code-stage cause: a library upgrade that stopped scheduler threads [1], a dependency upgrade that cut worker throughput [2] and a slow periodic query [3]. Report [2] adds an infra cause, a failure to scale up workers.
What are the symptoms of background job queue backlog?
Users see scheduled builds up to about forty minutes late [1], failing requests [2] or delayed emails [3]. Monitoring shows a growing queue, with more than 46K pending tasks against under 100 normally in report [3].
Why did tests not catch background job queue backlog?
In report [1], worker processes stayed healthy and no deploy failed while recurring scheduling had stopped. In report [3], the slow task's instances accumulated over several days, longer than a short load test runs.
Which public reports document background job queue backlog?
Three primary reports are accepted, published between June 2022 and August 2026. They cover a stopped job scheduler [1], an infrastructure work queue [2] and a central task queue [3].
How long did it take to detect background job queue backlog in the public reports?
Report [1] measures 15 minutes from merge at 04:33 UTC to the monitoring alert at 04:48 UTC. In report [3], admins confirmed the backlog after about 12 hours of user reports.
Should a team roll back or fix forward when background job queue backlog happens?
Report [2] rolled back the change and scaled routers by hand. Report [1] pinned the library back, and report [3] disabled the task and cancelled long-running queries.
Release Incident Playbook (2026). Background job queue backlog: symptoms, cause, and the test that catches it, content version 1.0.0. https://releasefailures.com/incidents/background-job-queue-backlog/. Accessed 2026-10-21.