"Steven Flatt" <steven(dot)flatt(at)gmail(dot)com> writes:
> I noticed that the Postgres autovacuum process was vacuuming some tables
> that had enabled = false in pg_autovacuum.
I think what is happening is that because you set
pg_autovacuum.freeze_max_age to zero, the thing always thinks that it's
time to force an anti-wraparound vacuum. IOW a nondefault freeze age is
still applied whether or not enabled is true. I'm not quite sure if
that's a bug or a feature --- you could argue that it's a feature
because it lets you suppress routine autovacuuming and still customize
the anti-wraparound timing. Maybe it's a documentation bug: the docs
say that enabled = false means the table is "never autovacuumed", but
what the code seems to be implementing is "it's only autovacuumed
when necessary to prevent wraparound". I think that's the behavior
we want ...
In any case, you should be setting "unused" fields of a pg_autovacuum
entry to -1, not zero.
regards, tom lane
In response to
pgsql-bugs by date
|Next:||From: Tom Lane||Date: 2008-01-24 01:09:42|
|Subject: Re: Statement Timeout Message Incorrect |
|Previous:||From: elein||Date: 2008-01-24 00:06:19|
|Subject: Re: Statement Timeout Message Incorrect|