aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/backend/catalog/index.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/backend/catalog/index.c b/src/backend/catalog/index.c
index ca057c7f2fa..1a5c3b3c3bd 100644
--- a/src/backend/catalog/index.c
+++ b/src/backend/catalog/index.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/catalog/index.c,v 1.263 2006/03/05 15:58:22 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/catalog/index.c,v 1.264 2006/03/24 23:02:17 tgl Exp $
*
*
* INTERFACE ROUTINES
@@ -1473,7 +1473,9 @@ IndexBuildHeapScan(Relation heapRelation,
/*
* If tuple is recently deleted then we must index it
- * anyway to keep VACUUM from complaining.
+ * anyway to preserve MVCC semantics. (Pre-existing
+ * transactions could try to use the index after we
+ * finish building it, and may need to see such tuples.)
*/
indexIt = true;
tupleIsAlive = false;
@@ -1541,13 +1543,10 @@ IndexBuildHeapScan(Relation heapRelation,
/*
* In a partial index, discard tuples that don't satisfy the
- * predicate. We can also discard recently-dead tuples, since VACUUM
- * doesn't complain about tuple count mismatch for partial indexes.
+ * predicate.
*/
if (predicate != NIL)
{
- if (!tupleIsAlive)
- continue;
if (!ExecQual(predicate, econtext, false))
continue;
}