High availability

RPO (Recovery Point Objective)

Also called: recovery point objective, acceptable data loss

RPO is the maximum amount of data you can afford to lose in a disaster, expressed as a time window ("at most 30 seconds"). In an asynchronous PostgreSQL setup your real RPO is simply the replication lag at the instant of failure, the WAL the disaster site hadn't received yet.

What this means

Your loss budget, the most data you can stand to lose in a disaster, stated as a time window like "at most 30 seconds." With asynchronous replication your real RPO is simply how far behind the standby was at the instant things failed: the WAL that hadn't reached it yet.

Why it matters operationally

It's a measurable number, not a slogan: you can read it as the byte gap between the primary's current WAL position and the standby's received position. Monitoring that gap is how you keep your actual RPO inside your target.

Related & next

Cross-region disaster recovery explainedRTO, the downtime counterpartReplication lag, what your RPO equals

← All glossary terms · GUC reference · Error catalog