On Thu, Oct 30, 2008 at 8:53 PM, Matthew T. O'Connor <matthew@xxxxxxxx> wrote:
Noah Freire wrote:Yes, in the pg_autovacuum table, you can set per-relation vacuum cost delay settings etc...On Wed, Oct 29, 2008 at 4:46 PM, Matthew T. O'Connor <matthew@xxxxxxxx <mailto:matthew@xxxxxxxx>> wrote:Is the table being excluded? (see the pg_autovacuum system tablesettings)there's an entry for this table on pg_autovacuum, and it's enabled.Are you sure that it's not getting processed? Perhaps one workeris / has been churning on this table for a *LONG* time (that is afairly big table).Right. I was wrong :-) the table is being processed by autovacuum (I checked via pg_stat_activity). However, as you pinpointed, it's already running for hours (the test workload ended hours ago, basically it is just this autovacuum worker running on the system). Is there a way to make a more aggressive autovacuum setting for this table? it does not matter if it will affect performance, my concern is that it finishes as soon as possible. I wonder if a manual vacuum wouldn't be faster.
Right. cost-delay for this table is already zeroed. Perhaps autovacuum could have an entry for cpu and/or i/o usage threshold, in a way that when one of this resources had an activity below a pre-defined threshold, autovacuum could run more aggressively (using more i/o and/or more cpu).