Re: Autovacuum of pg_database

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Cc: Ondřej Světlík <osvetlik(at)flexibee(dot)eu>, pgsql-admin(at)postgresql(dot)org
Subject: Re: Autovacuum of pg_database
Date: 2016-05-06 16:13:47
Message-ID: 5087.1462551227@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> writes:
> Tom Lane wrote:
>> I think it's pretty obvious: autovacuum.c's rule for detecting whether
>> some other worker is already processing table X is wrong when X is a
>> shared table. I propose the attached patch.

> Hmm, I have pretty much the same patch, except I added the flag to
> struct autovac_table and have it populated by table_recheck_autovac.
> Haven't tested this yet, which is why I hadn't posted it.

Actually, I realized after looking at it that the new wi_tableshared
field is unnecessary in my patch. The only important part is that
knowledge of relisshared be available when we're looking for conflicting
workers, and that is entirely local in do_autovacuum(). I'd started the
patch by adding wi_tableshared, on the expectation that it would be
necessary, but it ain't ...

regards, tom lane

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Alvaro Herrera 2016-05-06 16:19:32 Re: Autovacuum of pg_database
Previous Message Alvaro Herrera 2016-05-06 16:05:47 Re: Autovacuum of pg_database