mirror of
https://github.com/postgres/postgres.git
synced 2025-09-06 13:46:51 +03:00
Increase the default vacuum_cost_limit from 200 to 2000
The original 200 default value was set back inf425b605f4
when the cost delay settings were first added. Hardware has improved quite a bit since then and we've also made improvements such as sorting buffers during checkpoints (9cd00c457e
) which should result in less random writes. This low default value was reportedly causing problems with badly configured servers and in the absence of a native method to remove excessive bloat from tables without incurring an AccessExclusiveLock, this often made cleaning up the damage caused by badly configured auto-vacuums difficult. It seems more likely that someone will notice that auto-vacuum is running too quickly than too slowly, so let's go all out and multiple the default value for the setting by 10. With the default vacuum_cost_page_dirty and autovacuum_vacuum_cost_delay (assuming a page size of 8192 bytes), this allows autovacuum a theoretical maximum dirty write rate of around 39MB/s instead of just 3.9MB/s. Author: David Rowley Discussion: https://postgr.es/m/CAKJS1f_YbXC2qTMPyCbmsPiKvZYwpuQNQMohiRXLj1r=8_rYvw@mail.gmail.com
This commit is contained in:
@@ -137,7 +137,7 @@ int MaxBackends = 0;
|
||||
int VacuumCostPageHit = 1; /* GUC parameters for vacuum */
|
||||
int VacuumCostPageMiss = 10;
|
||||
int VacuumCostPageDirty = 20;
|
||||
int VacuumCostLimit = 200;
|
||||
int VacuumCostLimit = 2000;
|
||||
int VacuumCostDelay = 0;
|
||||
|
||||
int VacuumPageHit = 0;
|
||||
|
Reference in New Issue
Block a user