]> granicus.if.org Git - postgresql/commitdiff
Only send cleanup_info messages if VACUUM removes any tuples.
authorSimon Riggs <simon@2ndQuadrant.com>
Wed, 21 Apr 2010 19:53:24 +0000 (19:53 +0000)
committerSimon Riggs <simon@2ndQuadrant.com>
Wed, 21 Apr 2010 19:53:24 +0000 (19:53 +0000)
There is no other purpose for this message type than to report
the latestRemovedXid of removed tuples, prior to index scans.
Removes overlooked path for sending invalid latestRemovedXid.
Fixes buildfarm failure on centaur.

src/backend/commands/vacuumlazy.c

index 6e807e3b479e2bbc0b690045c848bc88a1f88e05..0b4047657ea4adc1c0506b9e45c22eff5fcd0ccf 100644 (file)
@@ -29,7 +29,7 @@
  *
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/backend/commands/vacuumlazy.c,v 1.133 2010/04/21 17:20:56 sriggs Exp $
+ *       $PostgreSQL: pgsql/src/backend/commands/vacuumlazy.c,v 1.134 2010/04/21 19:53:24 sriggs Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -274,9 +274,12 @@ vacuum_log_cleanup_info(Relation rel, LVRelStats *vacrelstats)
        if (rel->rd_istemp || !XLogIsNeeded())
                return;
 
-       Assert(TransactionIdIsValid(vacrelstats->latestRemovedXid));
+       if (vacrelstats->tuples_deleted > 0)
+       {
+               Assert(TransactionIdIsValid(vacrelstats->latestRemovedXid));
 
-       (void) log_heap_cleanup_info(rel->rd_node, vacrelstats->latestRemovedXid);
+               (void) log_heap_cleanup_info(rel->rd_node, vacrelstats->latestRemovedXid);
+       }
 }
 
 /*