Transaction ID wraparound causes forced downtime for emergency vacuuming
criticalavailabilityUpdated Jan 21, 2026
Sources
Technologies:
How to detect:
Transaction IDs are 32-bit and wrap around at ~2 billion. When database age approaches autovacuum_freeze_max_age (default 200M), autovacuum performs emergency freeze operations. If these fail to keep up, database shuts down to prevent data loss.
Recommended action:
Monitor database age via database_wraparound_age_datfrozenxid and database_wraparound_age_datminmxid metrics. Ensure autovacuum is enabled and tuned. For large tables, lower autovacuum_vacuum_scale_factor to trigger more frequent vacuums. Check autovacuum logs for blocked or slow vacuum operations.