Re: Some vacuum & tuning help - Mailing list pgsql-performance

From Matthew T. O'Connor
Subject Re: Some vacuum & tuning help
Date
Msg-id 1060144572.17472.18.camel@zeutrh9
Whole thread Raw
In response to Re: Some vacuum & tuning help  (Christopher Browne <cbbrowne@libertyrms.info>)
List pgsql-performance
On Tue, 2003-08-05 at 17:40, Christopher Browne wrote:
> Unfortunately, a "configurable-via-tables" pg_autovacuum is also going
> to be quite different from the current "unconfigurable" version.

true, however I would like to preserve the "unconfigured" functionality
so that it can be run against a totally unmodified database cluster.  If
it finds configuration information on the server then it uses it,
otherwise it just acts as it does now.

> But at that point, it makes sense to add in quite a bit of
> "configurable" behaviour, such as:
>
>  -> Specifying that certain tables should _never_ be automatically
>     vacuumed.

agreed

>  -> Establishing a "queue" of tables that pg_autovacuum plans to
>     vacuum, so that users could add in desired vacuums ("after the
>     other stuff being handled, force in a vacuum of app_table_foo").
>     That way, vacuums can be 'forced in' without introducing the
>     possibility that multiple vacuums might be done at once...

makes sense.

>  -> Making information about what vacuums have been done/planned
>     persistent across runs of pg_autovacuum, and even across
>     shutdowns of the DBMS.

good.

> This changes behaviour enough that I'm not sure it's the same
> "program" as the unconfigurable version.  Almost every option would be
> substantially affected by the logic:
>
>  if (CONFIG_DATA_IN_DB) {
>    /* Logic path that uses data in Vacuum Schema */
>  } else {
>    /* More banal logic */
>  }

I'm not so sure it's that different.  In either case we are going to
have a threshold and decide to vacuum based on that threshold.  The
change is only that the data would be persistent, and could be
customized on a per table basis.  The logic only really changes if
running unconfigured uses different data than the configured version,
which I don't see as being proposed.

> If I can store configuration in the database, then I'd like to also
> make up a view or two, and possibly even base the logic used on views
> that combine configuration tables with system views.  In effect, that
> makes for a _third_ radically different option.

Not sure I see what all you are implying here.  Please expand on this if
you deem it worthy.


I guess I'll start coding again.  I'll send an email to the hackers list
tomorrow evening with as much info / design as I can think of.

Matthew


pgsql-performance by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Some vacuum & tuning help
Next
From: "Christopher Kings-Lynne"
Date:
Subject: Re: Some vacuum & tuning help