database_wraparound_age_datfrozenxid
Datfrozenxid wraparound ageDimensions:None
Available on:
Prometheus (1)
Interface Metrics (1)
Dimensions:None
Technical Annotations (26)
Configuration Parameters (7)
autovacuum_vacuum_thresholdautovacuum_vacuum_scale_factorautovacuum_max_workersautovacuum_naptimeautovacuum_freeze_max_agerecommended: 200000000vacuum_freeze_min_agerecommended: 50000000 (default)vacuum_freeze_table_agerecommended: 0.95 * autovacuum_freeze_max_ageError Signatures (2)
WARNING: database "mydb" must be vacuumed within 39985967 transactionslog patternERROR: database is not accepting commands to avoid wraparound data loss in database "mydb"log patternCLI Commands (5)
VACUUMremediationSELECT c.oid::regclass as table_name, greatest(age(c.relfrozenxid),age(t.relfrozenxid)) as age FROM pg_class c LEFT JOIN pg_class t ON c.reltoastrelid = t.oid WHERE c.relkind IN ('r', 'm');diagnosticSELECT datname, age(datfrozenxid) FROM pg_database;diagnosticgcloud sql instances patch INSTANCE_NAME --maintenance-window-day=SUN --maintenance-window-hour=2Schedule maintenance during low-transaction period to minimize XID advancement while autovacuum pausedVACUUM (FREEZE, VERBOSE) tablename;Manually freeze transaction IDs after maintenance if wraparound age became criticalTechnical References (12)
autovacuumcomponenttransaction ID wraparoundconceptdead tuplesconceptVACUUMcomponentcheck_postgrescomponentpg_class.relfrozenxidcomponentpg_xactfile pathpg_prepared_xactscomponentpg_stat_activitycomponentpg_stat_replicationcomponentrelfrozenxidcomponentdatfrozenxidcomponentRelated Insights (6)
Inefficient autovacuum configuration causes table bloat and transaction ID wraparound riskcritical
▸
Transaction ID wraparound prevents new transactions and causes database shutdowncritical
▸
Transaction ID wraparound forces emergency autovacuum despite disabled autovacuumcritical
▸
Transaction ID wraparound prevents new transactionscritical
▸
Autovacuum disabled on static tables delays anti-wraparound vacuumwarning
▸
Cloud SQL autovacuum disabled during maintenance allows transaction ID wraparoundcritical
Cloud SQL maintenance windows can disable or suspend autovacuum for extended periods (1-4 hours) to perform updates. On high-transaction databases, this suspension allows transaction ID age to advance toward the 2-billion wraparound limit. PostgreSQL's autovacuum_freeze_max_age cannot prevent wraparound if Cloud SQL has paused autovacuum externally.
▸