]> granicus.if.org Git - postgresql/commitdiff
Fix comment on when HOT update is possible.
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Tue, 14 May 2019 10:06:33 +0000 (13:06 +0300)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Tue, 14 May 2019 10:06:33 +0000 (13:06 +0300)
The conditions listed in this comment have changed several times, and at
some point the thing that the "if so" referred to was negated.

The text was OK up to 9.6. It was differently wrong in v10, v11 and
master, so fix in all those versions.

src/backend/access/heap/heapam.c

index 07e9d24013d579eb743c8d9ed959d1caf631e5cc..698d08d1d397f1d8d326838c45dbddd49aa86f23 100644 (file)
@@ -4217,11 +4217,10 @@ l2:
        {
                /*
                 * Since the new tuple is going into the same page, we might be able
-                * to do a HOT update.  Check if any of the index columns have been
-                * changed, or if we have projection functional indexes, check whether
-                * the old and the new values are the same.   If the page was already
-                * full, we may have skipped checking for index columns. If so, HOT
-                * update is possible.
+                * to do a HOT update.  A HOT update is possible if none of the index
+                * columns, nor columns used in projection functional indexes, have
+                * changed.  If the page was already full, we may have skipped
+                * checking for index columns, and also can't do a HOT update.
                 */
                if (hot_attrs_checked
                        && !bms_overlap(modified_attrs, hot_attrs)