Re: Revitalising VACUUM FULL for 8.3 - Mailing list pgsql-hackers

From Zeugswetter Andreas ADI SD
Subject Re: Revitalising VACUUM FULL for 8.3
Date
Msg-id E1539E0ED7043848906A8FF995BDA57901CAFFE8@m0143.s-mxs.net
Whole thread Raw
In response to Re: Revitalising VACUUM FULL for 8.3  ("Simon Riggs" <simon@2ndquadrant.com>)
Responses Re: Revitalising VACUUM FULL for 8.3
List pgsql-hackers
> > >         -- start the VACUUM from the first non-filled block
> > >
> > > So if we do this, we wouldn't need to worry about HOT tuples at
all,
> > > nor would we need to wait until all transactions are gone.
> >
> > You need to wait until you are allowed to truncate if you want
> > concurrency.
> > Or a concurrent scan might miss a row, because the visible tuple got

> > truncated away.
>
> I was not suggesting that we remove visible rows through truncation.

Sure, unless you suggest to not truncate during this vacuum run ?
But we are talking about vacuum full, so truncation is essential.

It was suggested to do a dummy null update to move live tuples up front.
The old version is still visible for serializable txns.

Andreas


pgsql-hackers by date:

Previous
From: "Pavan Deolasee"
Date:
Subject: HOT WIP Patch - version 4.0
Next
From: "Simon Riggs"
Date:
Subject: Re: [PATCHES] WIP Patch - Updateable Cursors