These settings control the default behavior for the autovacuum daemon. Please refer to Section 22.1.4, “The auto-vacuum daemon” for more information.
autovacuum
(boolean
)
Controls whether the server should start the
autovacuum subprocess. This is off by default.
stats_start_collector
and stats_row_level
must also be on for this to start.
This option can be set at server start or in the
postgresql.conf
file.
autovacuum_naptime
(integer
)
Specifies the delay between activity rounds for the autovacuum
subprocess. In each round the subprocess examines one database
and issues VACUUM
and ANALYZE
commands
as needed for tables in that database. The delay is measured
in seconds, and the default is 60.
This option can be set at server start or in the
postgresql.conf
file.
autovacuum_vacuum_threshold
(integer
)
Specifies the minimum number of updated or deleted tuples needed
to trigger a VACUUM
in any one table.
The default is 1000.
This option can be set at server start or in the
postgresql.conf
file.
This setting can be overridden for individual tables by entries in
pg_autovacuum
.
autovacuum_analyze_threshold
(integer
)
Specifies the minimum number of inserted, updated or deleted tuples
needed to trigger an ANALYZE
in any one table.
The default is 500.
This option can be set at server start or in the
postgresql.conf
file.
This setting can be overridden for individual tables by entries in
pg_autovacuum
.
autovacuum_vacuum_scale_factor
(floating point
)
Specifies a fraction of the table size to add to
autovacuum_vacuum_threshold
when deciding whether to trigger a VACUUM
.
The default is 0.4.
This option can be set at server start or in the
postgresql.conf
file.
This setting can be overridden for individual tables by entries in
pg_autovacuum
.
autovacuum_analyze_scale_factor
(floating point
)
Specifies a fraction of the table size to add to
autovacuum_analyze_threshold
when deciding whether to trigger an ANALYZE
.
The default is 0.2.
This option can be set at server start or in the
postgresql.conf
file.
This setting can be overridden for individual tables by entries in
pg_autovacuum
.
autovacuum_vacuum_cost_delay
(integer
)
Specifies the cost delay value that will be used in automatic
VACUUM
operations. If -1 is specified (which is the
default), the regular
vacuum_cost_delay value will be used.
This setting can be overridden for individual tables by entries in
pg_autovacuum
.
autovacuum_vacuum_cost_limit
(integer
)
Specifies the cost limit value that will be used in automatic
VACUUM
operations. If -1 is specified (which is the
default), the regular
vacuum_cost_limit value will be used.
This setting can be overridden for individual tables by entries in
pg_autovacuum
.