From: Robert Haas <rhaas@postgresql.org>
Date: Wed, 18 Apr 2012 15:50:45 +0000 (-0400)
Subject: Remove bogus comment from HeapTupleSatisfiesNow.
X-Git-Tag: REL9_2_BETA1~114
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=293ec33c32e8e20fcb5859885a4b37ff6d855240;p=postgresql

Remove bogus comment from HeapTupleSatisfiesNow.

This has been wrong for a really long time.  We don't use two-phase
locking to protect against serialization anomalies.

Per discussion on pgsql-hackers about 2011-03-07; original report
by Dan Ports.
---

diff --git a/src/backend/utils/time/tqual.c b/src/backend/utils/time/tqual.c
index 31791a744f..c1c78c389c 100644
--- a/src/backend/utils/time/tqual.c
+++ b/src/backend/utils/time/tqual.c
@@ -323,16 +323,6 @@ HeapTupleSatisfiesSelf(HeapTupleHeader tuple, Snapshot snapshot, Buffer buffer)
  *		 (Xmax != my-transaction &&			the row was deleted by another transaction
  *		  Xmax is not committed))))			that has not been committed
  *
- *		mao says 17 march 1993:  the tests in this routine are correct;
- *		if you think they're not, you're wrong, and you should think
- *		about it again.  i know, it happened to me.  we don't need to
- *		check commit time against the start time of this transaction
- *		because 2ph locking protects us from doing the wrong thing.
- *		if you mess around here, you'll break serializability.  the only
- *		problem with this code is that it does the wrong thing for system
- *		catalog updates, because the catalogs aren't subject to 2ph, so
- *		the serializability guarantees we provide don't extend to xacts
- *		that do catalog accesses.  this is unfortunate, but not critical.
  */
 bool
 HeapTupleSatisfiesNow(HeapTupleHeader tuple, Snapshot snapshot, Buffer buffer)