Re: Autovacuum / full vacuum

From: Andrew Sullivan <ajs(at)crankycanuck(dot)ca>
To: pgsql-performance(at)postgresql(dot)org
Subject: Re: Autovacuum / full vacuum
Date: 2006-01-17 15:13:57
Message-ID: 20060117151357.GH21092@phlogiston.dyndns.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On Tue, Jan 17, 2006 at 03:05:29PM +0100, Michael Riess wrote:
> There must be a way to implement a daemon which frees up space of a
> relation without blocking it too long.

Define "too long". If I have a table that needs to respond to a
SELECT in 50ms, I don't have time for you to lock my table. If this
were such an easy thing to do, don't you think the folks who came up
wit the ingenious lazy vacuum system would have done it?

Remember, a vacuum full must completely lock the table, because it is
physically moving bits around on the disk. So a SELECT can't happen
at the same time, because the bits might move out from under the
SELECT while it's running. Concurrency is hard, and race conditions
are easy, to implement.

A

--
Andrew Sullivan | ajs(at)crankycanuck(dot)ca
A certain description of men are for getting out of debt, yet are
against all taxes for raising money to pay it off.
--Alexander Hamilton

In response to

Browse pgsql-performance by date

  From Date Subject
Next Message Andrew Sullivan 2006-01-17 15:19:44 Re: Autovacuum / full vacuum
Previous Message Tom Lane 2006-01-17 15:13:41 Re: Autovacuum / full vacuum