Incident Library

IL-0325 DigitalOcean · 2017-04-05database

DigitalOcean's control panel and API were down for 4 hours 56 minutes after the production primary database was deleted

DigitalOcean named the root cause as a configuration error made by an engineer: a process performing automated testing had been set up with production credentials, and the primary database was deleted. Three minutes after the first alerts the team confirmed the deletion, and four minutes later it started recovering from one of its time-delayed database replicas. The data was backed up from that replica, copied to the primary and restored, and then copied to the secondary replicas; the primary was fully restored at 3:20 PM EDT with no data lost. The length of the outage came mainly from the speed of the network between database servers while the data was reloaded.

Severity
–
Scope
Control panel and API unavailable; running Droplets continued to function but no Droplets or other resources could be created or managed
Users affected
–
Region
–
Time to detect
–
Time to resolve
4h 56m

Symptoms

At 10:24 AM EDT on April 5th, 2017, DigitalOcean began to receive alerts that its public services were not working, and by 10:27 the team had verified that the production database on the primary had been deleted. The control panel and the API were unavailable for four hours and fifty-six minutes: running Droplets kept working, but no new Droplets or other resources could be created or managed.

Recovery from a time-delayed database replica began at 10:34. A backup of that replica was complete at 11:53, the copy to the primary finished at 12:34, and recovery of the primary was complete at 13:31 while copies to the replicas continued. All systems were restored at 15:20 with no data lost. Most of the time went into copying data between the replicas over the network and restoring it into an active server.

Symptom Service outage

Root cause

Trigger
A process performing automated testing had been misconfigured with production credentials, and the production primary database was deleted.

Detection

Alerts at 10:24 AM EDT that public services were not functioning; within three minutes the team found that the primary database had been deleted.

Remediation

Action items

Lessons

–

Sources

Related cases

Check your cluster for this

kubegap audits a Kubernetes cluster for conditions like the ones in this case, Database, Database replication, Database backups and snapshots 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.