Search Postgresql Archives

Re: Autovacuum Improvements

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



1) Allow multiple "autovacuum workers": Currently Autovacuum is only capable of ordering one vacuum command at a time, for most work loads this is sufficient but falls down when a hot (very actively updated table) goes unvacuumed for a long period of time because a large table is currently being worked on.

2) Once we can have multiple autovacuum workers: Create the concept of hot tables that require more attention and should never be ignored for more that X minutes, perhaps have one "autovacuum worker" per hot table? (What do people think of this?)

3) Create "Maintenance Windows" for autovacuum: Currently autovacuum makes all of it's decisions based on a single per-table threshold value, maintenance windows would allow the setting of a per-window, per-table threshold. This makes it possible to, for example, forbid (or strongly discourage) autovacuum from doing maintenance work during normal business hours either for the entire system or for specific tables.

None of those three items are on the todo list, however I think there is general consensus that they (at least 1 & 3) are good ideas.

If it isn't there somewhere already, I would ask to add:

4) Expose all information used by autovacuum to form its decisions.

5) Expose a very easy way to discover autovacuum's opinion about a particular table, for example "table_needs_vacuum(oid)", ignoring any time constraints that may be in place.

-Glen



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux