Re: tuptoaster.c must *not* use SnapshotAny

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Zeugswetter Andreas SB SD" <ZeugswetterA(at)spardat(dot)at>
Cc: "Jan Wieck" <JanWieck(at)Yahoo(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: tuptoaster.c must *not* use SnapshotAny
Date: 2002-01-17 14:22:36
Message-ID: 23314.1011277356@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

"Zeugswetter Andreas SB SD" <ZeugswetterA(at)spardat(dot)at> writes:
>> It doesn't matter whether it's FrozenXid or not. The tuple is not
>> visible if it's got the wrong setting of HEAP_MOVED_OFF/IN.

> But the FrozenXid tuple has HEAP_MOVED_IN and the original has
> not yet been altered to HEAP_MOVED_OFF because of abort.
> Is the HEAP_MOVED_IN tuple not visible ?

Right. Actually it doesn't matter whether the old tuple has
HEAP_MOVED_OFF or not; it's still visible *until* the VACUUM commits.
The commit atomically switches us from the state where the unmoved
tuples are good to the state where the moved ones are good.

This is all exactly the same whether FrozenXid is involved or not.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Gavin Sherry 2002-01-17 14:50:47 can't shrink relation
Previous Message Zeugswetter Andreas SB SD 2002-01-17 14:12:52 Re: tuptoaster.c must *not* use SnapshotAny