Re: Dead Space Map - Mailing list pgsql-hackers

From Heikki Linnakangas
Subject Re: Dead Space Map
Date
Msg-id Pine.OSF.4.61.0602281937440.76425@kosh.hut.fi
Whole thread Raw
In response to Re: Dead Space Map  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: Dead Space Map
Re: Dead Space Map
List pgsql-hackers
On Tue, 28 Feb 2006, Bruce Momjian wrote:

> Tom Lane wrote:
>> Bruce Momjian <pgman@candle.pha.pa.us> writes:
>>> Tom Lane wrote:
>>>> MVCC goes out the window, eh?  Not to mention transaction rollback ability?
>>
>>> If the old row is not visible to any transactions, why would it not work?
>>
>> The old row is ALWAYS visible to somebody, until you commit (if you ever
>> do).  You can't simply overwrite existing data.
>
> Huh, I am not suggesting overwriting tuples you created, but tuples
> created by earlier transactions and now invisible to everyone.
>
> I should be clearer.  Suppose you have a table with a single index on
> the primary key.  You are updating the row over and over again (a
> typical case).  You create the first row, commit, then it is updated
> (two copies), commit, then you update it again.  That first created row
> might not be visible to anyone, but has the same index value as the new
> row you are about to add.  Why not reused that heap tuple?

Index tuples have commit info hint bits in them, don't they? You would 
still have to update those.

- Heikki


pgsql-hackers by date:

Previous
From: "Kevin Grittner"
Date:
Subject: Re: [PERFORM] temporary indexes
Next
From: Bruce Momjian
Date:
Subject: Re: Dead Space Map