diff --git a/src/backend/access/heap/vacuumlazy.c b/src/backend/access/heap/vacuumlazy.c
index 8dc76fa..6efe3e9 100644
--- a/src/backend/access/heap/vacuumlazy.c
+++ b/src/backend/access/heap/vacuumlazy.c
@@ -1088,11 +1088,17 @@ lazy_scan_heap(Relation onerel, VacuumParams *params, LVRelStats *vacrelstats,
 						tupgone = true; /* we can delete the tuple */
 
 						/*
-						 * Since this dead tuple will not be vacuumed and
-						 * ignored when index cleanup is disabled we count
-						 * count it for reporting.
+						 * But, we will leave this dead tuple when index cleanup
+						 * is disabled in order to keep the code for leaving
+						 * dead tuples simple. We can remove its tuple storage
+						 * when vacuuming the page but it requires to vacuum only
+						 * this dead tuple while checking the recorded dead
+						 * tuples, so it is more reasonable way to just skip
+						 * vacuuming the page and leave the whole tuple. It is
+						 * not harmful because this is a rare condition, and the
+						 * next vacuum will process it anyway.
 						 */
-						if (params->index_cleanup == VACOPT_TERNARY_ENABLED)
+						if (params->index_cleanup == VACOPT_TERNARY_DISABLED)
 							nleft_dead_tuples++;
 					}
 					all_visible = false;
