Re: Autovacuum in the backend - Mailing list pgsql-hackers

From Qingqing Zhou
Subject Re: Autovacuum in the backend
Date
Msg-id d8o73a$2397$1@news.hub.org
Whole thread Raw
In response to Autovacuum in the backend  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: Autovacuum in the backend
Re: Autovacuum in the backend
Re: Autovacuum in the backend
List pgsql-hackers
"Bruce Momjian" <pgman@candle.pha.pa.us> writes
>
> One goal for 8.1 is to move /contrib/pg_autovacuum in to the backend.  I
> think it has to be done in four stages:
>
> o  move it into the backend and have it start/stop automatically

The start/stop routine is quite like Bgwriter. It requires PgStats to be
turned on. If it aborts unexpectedly, hopefully we could restart it. Shall
we have a RequestVacuum() to pass the control to this process so to avoid
possible redundant vacuums from user side?

> o  move the autovacuum configuration parameters into postgresql.conf

There are some correlations of GUC parameters in order to incorporate it:
* stats_start_collector = true
* stats_row_level = true

add a parameter to let user pass in the configuration parameters:
* autovacuum_command = "-s 100 -S 1 ..."

So if autovacuum_command is given, we will automatically set the upper two
parameters true?

> o  modify the code to use the backend API for error recovery
> o  modify the code to use the backend API utilities, like hashes

Change "connect/disconnect server" to "start/stop autovacuum process";
Change "execute query" to "backend APIs";
Change "list" to "hash";
Need think more to handle various error conditions ...

>
> Who would like to get started on this?  It seems pretty straight-forward.
>

I'd like to give it a try.

Regards,
Qingqing




pgsql-hackers by date:

Previous
From: "John Hansen"
Date:
Subject: Re: LGPL
Next
From: "Qingqing Zhou"
Date:
Subject: Re: Autovacuum in the backend