Type: | bool |
Default: | on |
Context: | sighup |
Restart: | false |
Controls whether the server should run the autovacuum launcher daemon. This is on by default; however, track_counts must also be enabled for autovacuum to work. This parameter can only be set in the postgresql.conf file or on the server command line; however, autovacuuming can be disabled for individual tables by changing table storage parameters.
Note that even when this parameter is disabled, the system will launch autovacuum processes if necessary to prevent transaction ID wraparound. See vacuum-for-wraparound for more information.
Recommendations
Starts the daemon which cleans up your tables and indexes, preventing bloat and poor response times. The only reason to set it to “off” is for databases which regularly do large batch operations like ETL. Note that you can adjust the frequency or stop autovacuum on individual tables by adding rows to the pg_autovacuum system table.
On StackOverflow
On pgsql-hackers
- Re: allow changing autovacuum_max_workers without restarting
- BUG: deadlock between autovacuum worker and client backend during removal of orphan temp tables with sequences
- Re: xid_wraparound tests intermittent failure.
- Re: New GUC autovacuum_max_threshold ?
- Re: Allow non-superuser to cancel superuser tasks.