On Mon, 2007-09-10 at 18:23 +0100, Heikki Linnakangas wrote:
> > If we check a tuple in a chain and the tuple is dead is it possible the
> > pruning operation is cheaper than having to check the tuple again for
> > visibility the next time we see it? If so, we can just always prune
> > when we see a dead tuple in the chain, which I believe was the original
> > design. Pruning becomes an operation similar to marking an index entry
> > as dead. (I assuming pruing does not generate WAL traffic.)
>
> Pruning does generate a WAL record at the moment. Maybe you could do
> some kind of a quick pruning without a WAL record. Like just modify the
> ctid of the oldest dead tuple in the chain, or the redirecting line
> pointer if there is one, to point to the latest live tuple, without
> removing the dead tuples or the line pointers.
Sounds like a great idea.
--
Simon Riggs
2ndQuadrant http://www.2ndQuadrant.com