systemsfailed.devfailure archive
← All incidents
Incident report
GitLab/2017-01-31/~18h + permanent loss

rm -rf on the wrong database

Jan 2017Dec 2017

~300GB of production database gone; six hours of issues, merge requests and users lost for good.

Lesson

Backups you've never restored are not backups. The deletion is the famous part; the broken recovery path is the real lesson.

An engineer fighting spam-induced replication lag ran a directory removal against what turned out to be the primary, not the replica.

The data vanished in seconds. Then the gut-punch: five of five backup and replication methods were broken or untested. A six-hour-old LVM snapshot, taken by luck, was the only thing that saved most of the data.

Set acceptable recovery time and data loss, then prove your backups can meet both by restoring real data.

Share this failurePost on XDownload card