Re: Much Ado About COUNT(*) - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Much Ado About COUNT(*)
Date
Msg-id 5314.1105592798@sss.pgh.pa.us
Whole thread Raw
In response to Re: Much Ado About COUNT(*)  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: Much Ado About COUNT(*)  (Bruce Momjian <pgman@candle.pha.pa.us>)
List pgsql-hackers
Bruce Momjian <pgman@candle.pha.pa.us> writes:
> Tom Lane wrote:
>> Even if you could track the tuple's committed-good status reliably,
>> that isn't enough under MVCC.

> I mentioned that:

>> (Oh, and you could only update the bit when all active transactions
>> are newer than the creation transaction so we know they should all see
>> it as visible.)

Ah, right, I missed the connection.  Hmm ... that's sort of the inverse
of the "killed tuple" optimization we put in a release or two back,
where an index tuple is marked as definitely dead once it's committed
dead and the deletion is older than all active transactions.  Maybe that
would work.  You'd still have to visit the heap when a tuple is in the
"uncertain" states, but with luck that'd be only a small fraction of the
time.

I'm still concerned about the update costs of maintaining these bits,
but this would at least escape the index-bloat objection.  I think we
still have one free bit in index tuple headers...
        regards, tom lane


pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Much Ado About COUNT(*)
Next
From: Bruce Momjian
Date:
Subject: Re: Much Ado About COUNT(*)