PrefectPostgreSQL

Autovacuum has not run in 24+ hours on active tables

warning
performanceUpdated Mar 24, 2026
How to detect:

PostgreSQL autovacuum has not executed in over 24 hours on active tables, preventing cleanup of dead tuples and causing bloat accumulation.

Recommended action:

Check autovacuum configuration with SHOW autovacuum commands. Review last_autovacuum timestamps in pg_stat_user_tables. For high-volume tables like events, tune autovacuum_vacuum_scale_factor to 0.05 (from default 0.2) and autovacuum_vacuum_threshold to 1000. For state tables, set scale_factor to 0.1. Check for blocking long-running transactions.