Re: CLUSTER patch - Mailing list pgsql-patches

From Alvaro Herrera
Subject Re: CLUSTER patch
Date
Msg-id Pine.LNX.4.44.0207141514190.21167-200000@cm-lcon1-46-187.cm.vtr.net
Whole thread Raw
In response to Re: CLUSTER patch  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: CLUSTER patch
Re: CLUSTER patch
Re: CLUSTER patch
List pgsql-patches
Tom Lane dijo:

> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > This case is actually more complicated because after the swap, pg_class
> > still says thisxactonly but the relfilenode points to non-thisactonly
> > buffers, and via versa.
>
> pg_class doesn't say anything (if it did, we could make relcache.c
> track it).
>
> But yes, the problem is that myxactonly has to line up with where the
> buffers are stored.  As I mentioned, I think it would work to flush out
> all buffers for both rels before doing the swap.

It does indeed work.  Actually, I tried to do that before, but the fact
that RelationFlushBuffers requires a firstDelBlock made me turn around.

I attach a new patch against current cvs HEAD.  It works as far as I've
tested it, but I may be missing some cases.  I'll post a documentation
patch later if this gets applied.

--
Alvaro Herrera (<alvherre[a]atentus.com>)
"Some men are heterosexual, and some are bisexual, and some
men don't think about sex at all... they become lawyers" (Woody Allen)

Attachment

pgsql-patches by date:

Previous
From: Tom Lane
Date:
Subject: Re: CLUSTER patch
Next
From: Tom Lane
Date:
Subject: Re: CLUSTER patch