mirror of
https://github.com/postgres/postgres.git
synced 2025-07-17 06:41:09 +03:00
Add a multi-worker capability to autovacuum. This allows multiple worker
processes to be running simultaneously. Also, now autovacuum processes do not count towards the max_connections limit; they are counted separately from regular processes, and are limited by the new GUC variable autovacuum_max_workers. The launcher now has intelligence to launch workers on each database every autovacuum_naptime seconds, limited only on the max amount of worker slots available. Also, the global worker I/O utilization is limited by the vacuum cost-based delay feature. Workers are "balanced" so that the total I/O consumption does not exceed the established limit. This part of the patch was contributed by ITAGAKI Takahiro. Per discussion.
This commit is contained in:
@ -376,6 +376,7 @@
|
||||
#autovacuum = on # enable autovacuum subprocess?
|
||||
# 'on' requires stats_start_collector
|
||||
# and stats_row_level to also be on
|
||||
#autovacuum_max_workers = 3 # max # of autovacuum subprocesses
|
||||
#autovacuum_naptime = 1min # time between autovacuum runs
|
||||
#autovacuum_vacuum_threshold = 500 # min # of tuple updates before
|
||||
# vacuum
|
||||
|
Reference in New Issue
Block a user