Re: [COMMITTERS] pgsql: Augment WAL records for btree delete with GetOldestXmin() to

From: Simon Riggs <simon(at)2ndQuadrant(dot)com>
To: Greg Stark <gsstark(at)mit(dot)edu>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, Stefan Kaltenbrunner <stefan(at)kaltenbrunner(dot)cc>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: [COMMITTERS] pgsql: Augment WAL records for btree delete with GetOldestXmin() to
Date: 2010-03-27 19:36:47
Message-ID: 1269718607.3684.1967.camel@ebony
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

On Sat, 2010-03-27 at 19:15 +0000, Greg Stark wrote:
> On Sat, Mar 27, 2010 at 10:10 AM, Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
> > It appears that in practice many of the index items point to heap items
> > that are LP_DEAD. So for the purposes of accessing a heap tuple's xmin,
> > then we're both right. To the current purpose the tuple has been
> > removed, though you are also right: its stub remains.
>
> If we're pruning an index entry to a heap tuple that has been HOT
> pruned wouldn't the HOT pruning record have already conflicted with
> any queries that could see it?

Quite probably, but a query that started after that record arrived might
slip through. We have to treat each WAL record separately.

Do you agree with the conjecture? That LP_DEAD items can be ignored
because their xid would have been earlier than the latest LP_NORMAL
tuple we find? (on any page).

Or is a slightly less strong condition true: we can ignore LP_DEAD items
on a page that is also referenced by an LP_NORMAL item.

--
Simon Riggs www.2ndQuadrant.com

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Greg Stark 2010-03-27 22:39:45 Re: [COMMITTERS] pgsql: Augment WAL records for btree delete with GetOldestXmin() to
Previous Message Greg Stark 2010-03-27 19:15:37 Re: [COMMITTERS] pgsql: Augment WAL records for btree delete with GetOldestXmin() to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2010-03-27 20:11:37 Re: join removal
Previous Message Robert Haas 2010-03-27 19:30:51 Re: Proposal: access control jails (and introduction as aspiring GSoC student)