Csaba Nagy wrote: > > Alternatively, perhaps a threshold so that a table is only considered > > for vacuum if: > > (table-size * overall-activity-in-last-hour) < threshold > > Ideally you'd define your units appropriately so that you could just > > define threshold in postgresql.conf as 30% (of peak activity in last 100 > > hours say). > > No, this is definitely not enough. The problem scenario is when > autovacuum starts vacuuming a huge table and that keeps it busy 10 hours > and in the meantime the small but frequently updated tables get awfully > bloated... > > The only solution to that is to have multiple vacuums running in > parallel, and it would be really nice if those multiple vacuums would be > coordinated by autovacuum too... Yes, I agree, having multiple "autovacuum workers" would be useful. -- Alvaro Herrera http://www.CommandPrompt.com/ PostgreSQL Replication, Consulting, Custom Development, 24x7 support