Objective.
Kill a single-instance PostgreSQL database's process and measure how long it takes to accept writes again.
Scenario.
The database process was killed while a client wrote once a second over TLS.
Expected behaviour.
- Restart automatically.
- Lose no acknowledged write.
Measured recovery.
- Recovery time RTO
- 1 min 11 s
- Target 6 min · met
- Recovery point RPO
- 0 s
- Every committed write kept.
- Database consistency
- Pass
Customer impact.
- Application availability
- Writes back after 71.3 s
- Data integrity
- Verified
- Committed data
- Fully preserved
What happened.
- Database process killed.
- Writes accepted again; all 157 acknowledged writes present.
Correctness checks.
- Committed data
- Fully preserved
What we learned.
- All 157 acknowledged writes were present afterwards.
What we changed.
- No change needed.
Scope of this drill.
A process failure, not the loss of a machine.