Re: Autovacuum cancellation - Mailing list pgsql-patches

From Tom Lane
Subject Re: Autovacuum cancellation
Date
Msg-id 29572.1193359122@sss.pgh.pa.us
Whole thread Raw
In response to Re: Autovacuum cancellation  (Gregory Stark <stark@enterprisedb.com>)
Responses Re: Autovacuum cancellation
Re: Autovacuum cancellation
List pgsql-patches
Gregory Stark <stark@enterprisedb.com> writes:
> Can autovacuum actually get into a hard deadlock?

It can certainly be part of a deadlock loop, though the practical cases
might be few.  It will be holding more than one lock, eg a lock on its
target table and various transient locks on system catalogs, and other
processes taking or trying for exclusive locks on those things could
create issues.  I think it's OK to leave the issue go for now, until
we see if anyone hits it in practice --- I just wanted to mention that
we might need to consider the problem in future.

> I think there's a window where the process waiting directly on
> autovacuum could have already fired its deadlock check before it was
> waiting directly on autovacuum.

I think you don't understand what that code is doing.  If there's an
autovac anywhere in the dependency graph, it'll find it.

            regards, tom lane

pgsql-patches by date:

Previous
From: Joe Conway
Date:
Subject: Re: [GENERAL] Crosstab Problems
Next
From: Alvaro Herrera
Date:
Subject: Re: Autovacuum cancellation