Indexing dead tuples

From: Simon Riggs <simon(at)2ndquadrant(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Indexing dead tuples
Date: 2005-08-31 21:25:31
Message-ID: 1125523531.3956.15.camel@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

During CREATE INDEX we include all tuples, even if they are already dead
when we build an index.

What purpose does this serve?

A pre-existing transaction can't see the index, so there is no danger
that it can use the index and unknowingly avoid touching a valid row.
(If it *can* see the index, is there some benefit in that behaviour?)

I suggest that we should not include dead rows in an index when it is
created, to increase the speed of index creation in certain cases. This
also simplifies a number of the index build routines, which actually
contain special logic for handling dead rows.

Comments?

Best Regards, Simon Riggs

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Dunstan 2005-08-31 21:32:21 Re: 8.1 and syntax checking at create time
Previous Message Tom Lane 2005-08-31 21:14:13 Re: On hardcoded type aliases and typmod for user types