Incident Library

IL-0553 CircleCI · 2026-10-06database

CircleCI's orchestration database filled its transaction log volume, and no workflows or jobs started for 50 minutes

CircleCI's workflow orchestration service tracks the state of every pipeline, workflow and job, decides when each job is ready, hands ready jobs to the execution fleet, and drives the job data in the UI, notifications and commit statuses. The service keeps its state in one database. The database writes every change to a transaction log on a dedicated storage volume and archives the logs continuously so the space can be reused; if archiving falls behind and the volume fills, the database stops accepting writes. On a very large table, the periodic autovacuum maintenance reads every page and writes a large volume of transaction logs.

On 6 October 2026, from around 12:40 UTC, anti-wraparound autovacuum on several of the largest tables wrote transaction logs faster than they could be archived, and the log volume began to fill. The orchestration service slowed from 13:30, short error alerts that had appeared since 10:02 were handled as routine, and the incident was declared at 14:54. Engineers tuned the autovacuum settings so it would finish faster. At 15:43 the log volume was close to full, and to keep the database from going read-only engineers moved the transaction logs to the database's main storage volume, which had plenty of free space. The move took the database offline from 15:47 for a time nobody could predict; from 15:48 to 16:38 the service processed no work, and pipelines triggered from 16:02 failed. A replacement database was prepared as a fallback, but the original came back first and stayed in service.

With logs and data on the same storage, the database ran at about half its normal rate from 16:38 to 18:19, and it had to finish archiving its log backlog before the logs could return to a dedicated volume. Engineers changed database parameters to stop more maintenance runs from starting, prepared ways to cut the work reaching the service, and prepared a complete second stack of the service that they could move to at the risk of data loss; CircleCI opted against that move. At 18:19 a database setting change cut the time each write waited on storage, processing speed recovered, and added database and server capacity for the systems that hand jobs to the execution fleet helped clear the backlog. New jobs started on time again by about 19:55, Docker jobs on larger resource classes then waited while capacity scaled up, and start times were normal by 20:30. The incident was resolved at 21:19 UTC. About 3,500 jobs failed to start, some because CircleCI's systems gave up after retrying, and CircleCI found no evidence that any job ran more than once.

Severity
–
Scope
Creating pipelines and starting workflows and jobs on CircleCI was delayed from 15:30 to 20:30 UTC and stopped from 15:48 to 16:38 UTC; pipelines triggered from 16:02 UTC failed; UI data, notifications and commit status updates were delayed; about 3,500 jobs failed to start
Users affected
CircleCI customers
Region
–
Time to detect
5m
Time to resolve
7h

Symptoms

On 6 October 2026 CircleCI pipelines were slow to be created and workflows and jobs were slow to start, in short bursts from 13:30 UTC and continuously from 15:30 UTC. From 15:48 to 16:38 UTC no workflows or jobs started at all, and pipelines triggered from 16:02 UTC failed.

From 10:02 UTC, monitoring raised short-lived alerts about errors in the workflow orchestration service, and each cleared on its own within about 15 minutes. Engineers had seen similar brief alerts before and the system showed no other signs of stress, so each time the engineers followed the runbook and also began work to make the alerts less sensitive. At 13:35 the alerts returned together with related alerts from several other services, and again around 14:30, and an incident was declared at 14:54. No alert existed on how full the transaction log volume was or on how far log archiving had fallen behind.

Once the slowdown was traced to an anti-wraparound autovacuum, cancelling it was no answer, because the database restarts that process automatically when it is cancelled. Engineers changed its settings to help it finish faster, but by 15:30 the delays were continuous and some jobs began to fail.

UI data, notifications and commit status updates to version control providers were delayed as well; early status updates said job, workflow and pipeline data could take up to 15 minutes to appear in the UI and outbound notifications and webhooks were up to 1 minute late. After the database came back at 16:38 it processed work at about half its normal rate until 18:19, and jobs waited tens of minutes to start, up to about 50 minutes at the longest. When the backlog reached the execution fleet, some Docker jobs on larger resource classes waited up to about 10 minutes from 19:49 to 20:30 while capacity scaled up; the status page put the peak at around 20:05 UTC, with waits of up to about 8 minutes for 2xlarge gen2 and 6 minutes for xlarge gen2. About 3,500 jobs failed to start.

Symptom High latencyService outageThroughput degradationNode disk full

Root cause

Trigger
Around 12:40 UTC, on top of the regular workload, anti-wraparound autovacuum runs on several of the largest tables of the orchestration service's database began writing transaction logs faster than the database could archive them.

Detection

Monitoring raised short alerts about errors in the orchestration service from 10:02 UTC, each clearing on its own. At 13:35 the alerts came back together with related alerts from several other services, and after they returned around 14:30 and engineers investigated further, an incident was declared at 14:54 UTC.

Remediation

Action items

Lessons

CircleCI says the combination of alerts should have been recognised sooner: brief error alerts that cleared on their own were treated as routine, and nothing alerted on the transaction log volume or on archiving lag. Because every write of the orchestration service went through one database and one transaction log, a backlog in that log slowed every pipeline, workflow and job.

Sources

Related cases

Check your cluster for this

kubegap audits a Kubernetes cluster for conditions like the ones in this case, Database, PostgreSQL vacuum, CI system among them, read-only, from Claude Code or Codex. Its checks cite public reports like this one.

For AI tools and scripts

The API needs no key. The MCP server offers search_incidents, get_incident, list_incidents, get_topic and vocab; both are explained on API and MCP.