Re: Some vacuum & tuning help

From: "Matthew T(dot) O'Connor" <matthew(at)zeut(dot)net>
To: Christopher Browne <cbbrowne(at)libertyrms(dot)info>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: Some vacuum & tuning help
Date: 2003-08-06 04:36:12
Message-ID: 1060144572.17472.18.camel@zeutrh9
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: 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

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Christopher Kings-Lynne 2003-08-06 04:41:06 Re: Some vacuum & tuning help
Previous Message Bruce Momjian 2003-08-06 04:32:02 Re: Some vacuum & tuning help