On Wed, 2009-09-16 at 23:12 -0400, Tom Lane wrote:
> Jeff Davis <pgsql@j-davis.com> writes:
> > On Wed, 2009-09-16 at 21:48 -0400, Tom Lane wrote:
> >> Yeah, I was just wondering about that myself. Seems like there would
> >> be lots of situations where short exclusive-lock intervals could be
> >> tolerated, even though not long ones.
>
> > But a short-lived exclusive lock can turn into a long-lived exclusive
> > lock if there are long-lived transactions ahead of it in the queue. We
> > probably don't want to automate anything by default that acquires
> > exclusive locks, even for a short time. However, I agree that it's fine
> > in many situations if the administrator is choosing it.
>
> Right, which is why autovacuum can't have anything to do with this.
We already do this and we already solved the problem associated with it.
VACUUM tries to grab a conditional lock to shrink the table. We can do
the same thing here, just retry the lock for each chunk cleaned.
-- Simon Riggs www.2ndQuadrant.com