Thread: autovacuum

autovacuum

From
Tom Allison
Date:
This database is working GREAT!!!

I noticed that under 8.2 the autovacuum isn't running (logging) every
60s like I'm used to seeing.
I pretty much just took the defaults in the postgresql.conf file
since that's always seemed to work before.

I'm not making a lot of changes to the database right now (insert/
update/delete) but I thought I would still get the logging.

any thing I can check?

Re: autovacuum

From
Michael Fuhr
Date:
On Sat, May 12, 2007 at 03:48:14PM -0400, Tom Allison wrote:
> I noticed that under 8.2 the autovacuum isn't running (logging) every
> 60s like I'm used to seeing.

See the 8.2 Release Notes:

http://www.postgresql.org/docs/8.2/interactive/release-8-2.html

  * Remove routine autovacuum server log entries (Bruce)

    pg_stat_activity now shows autovacuum activity.

In 8.2 the "autovacuum: processing database" messages are logged
at DEBUG1; in 8.1 they were logged at LOG.

> I pretty much just took the defaults in the postgresql.conf file
> since that's always seemed to work before.

Autovacuum was first incorporated into the backend in 8.1 and it's
disabled by default in 8.1 and 8.2, at least in source builds (it
might be enabled by default in some pre-packaged distributions).
What do you have in postgresql.conf for the following settings?

autovacuum
autovacuum_naptime
stats_start_collector
stats_row_level
log_min_messages

Do you see any warnings like the following in the server logs?

WARNING:  autovacuum not started because of misconfiguration
HINT:  Enable options "stats_start_collector" and "stats_row_level".

> I'm not making a lot of changes to the database right now (insert/
> update/delete) but I thought I would still get the logging.

If you have autovacuum and row-level statistics enabled then
autovacuum should be running.  I'd guess you aren't seeing the
routine messages because they're logged at DEBUG1 and you have
log_min_messages at a level that doesn't show debug messages.

--
Michael Fuhr

Re: [UNSURE] Re: autovacuum

From
Tom Allison
Date:
 From what you described, I am running with autovacuum.

Makes sense to make a good idea default in the distro builds...

On May 13, 2007, at 9:49 AM, Michael Fuhr wrote:

> On Sat, May 12, 2007 at 03:48:14PM -0400, Tom Allison wrote:
>> I noticed that under 8.2 the autovacuum isn't running (logging) every
>> 60s like I'm used to seeing.
>
> See the 8.2 Release Notes:
>
> http://www.postgresql.org/docs/8.2/interactive/release-8-2.html
>
>   * Remove routine autovacuum server log entries (Bruce)
>
>     pg_stat_activity now shows autovacuum activity.
>
> In 8.2 the "autovacuum: processing database" messages are logged
> at DEBUG1; in 8.1 they were logged at LOG.
>
>> I pretty much just took the defaults in the postgresql.conf file
>> since that's always seemed to work before.
>
> Autovacuum was first incorporated into the backend in 8.1 and it's
> disabled by default in 8.1 and 8.2, at least in source builds (it
> might be enabled by default in some pre-packaged distributions).
> What do you have in postgresql.conf for the following settings?
>
> autovacuum
> autovacuum_naptime
> stats_start_collector
> stats_row_level
> log_min_messages
>
> Do you see any warnings like the following in the server logs?
>
> WARNING:  autovacuum not started because of misconfiguration
> HINT:  Enable options "stats_start_collector" and "stats_row_level".
>
>> I'm not making a lot of changes to the database right now (insert/
>> update/delete) but I thought I would still get the logging.
>
> If you have autovacuum and row-level statistics enabled then
> autovacuum should be running.  I'd guess you aren't seeing the
> routine messages because they're logged at DEBUG1 and you have
> log_min_messages at a level that doesn't show debug messages.
>
> --
> Michael Fuhr
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 1: if posting/reading through Usenet, please send an appropriate
>        subscribe-nomail command to majordomo@postgresql.org so that
> your
>        message can get through to the mailing list cleanly