From: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Steven Flatt <steven(dot)flatt(at)gmail(dot)com>, pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: BUG #3898: Postgres autovacuum not respecting pg_autovacuum.enabled = false |
Date: | 2008-01-24 03:01:13 |
Message-ID: | 20080124030113.GC21620@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Tom Lane escribió:
> "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.
That's correct.
> 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 ...
IMO it's a usability bug which will be gone when we move to
pg_class.reloptions -- you won't need to set random values for options
you don't know what to set to.
As for documentation, this is mentioned somewhere. Perhaps not clearly
enough? OTOH I think the real problem is that people think
documentation can be skipped, thus they don't know the "fine print" --
so it won't matter how non-fine we make it.
--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.
From | Date | Subject | |
---|---|---|---|
Next Message | Simon Riggs | 2008-01-24 09:19:17 | Re: BUG #3898: Postgres autovacuum not respecting pg_autovacuum.enabled = false |
Previous Message | Tom Lane | 2008-01-24 01:09:42 | Re: Statement Timeout Message Incorrect |