]> git.ipfire.org Git - thirdparty/postgresql.git/commitdiff
Correct comment in Hot Standby nbtree handling
authorSimon Riggs <simon@2ndQuadrant.com>
Tue, 6 May 2014 13:45:05 +0000 (14:45 +0100)
committerSimon Riggs <simon@2ndQuadrant.com>
Tue, 6 May 2014 13:45:05 +0000 (14:45 +0100)
Logic is correct, matching handling of LP_DEAD elsewhere.

src/backend/access/nbtree/nbtxlog.c

index af1b5ab07af5cf7baf1dc7d0ae5bd4bff7a44daa..8e2b0b6459aa3a2dde6609de0e473f7c6c69287d 100644 (file)
@@ -719,11 +719,11 @@ btree_xlog_delete_get_latestRemovedXid(xl_btree_delete *xlrec)
        UnlockReleaseBuffer(ibuffer);
 
        /*
-        * XXX If all heap tuples were LP_DEAD then we will be returning
-        * InvalidTransactionId here, causing conflict for all HS transactions.
-        * That should happen very rarely (reasoning please?). Also note that
-        * caller can't tell the difference between this case and the fast path
-        * exit above. May need to change that in future.
+        * If all heap tuples were LP_DEAD then we will be returning
+        * InvalidTransactionId here, which avoids conflicts. This matches
+        * existing logic which assumes that LP_DEAD tuples must already be
+        * older than the latestRemovedXid on the cleanup record that
+        * set them as LP_DEAD, hence must already have generated a conflict.
         */
        return latestRemovedXid;
 }