Update lazy_scan_heap header comment.
authorRobert Haas <[email protected]>
Fri, 13 Apr 2012 12:49:59 +0000 (08:49 -0400)
committerRobert Haas <[email protected]>
Fri, 13 Apr 2012 12:51:19 +0000 (08:51 -0400)
The previous comment described how things worked in PostgreSQL 8.2
and prior.

src/backend/commands/vacuumlazy.c

index 11e8da1fc1bd44c94272ae85be5a008a45814a14..d4f35bc648a9de52c2ffedc58883be4762b73183 100644 (file)
@@ -342,13 +342,18 @@ vacuum_log_cleanup_info(Relation rel, LVRelStats *vacrelstats)
 /*
  *     lazy_scan_heap() -- scan an open heap relation
  *
- *             This routine sets commit status bits, builds lists of dead tuples
- *             and pages with free space, and calculates statistics on the number
- *             of live tuples in the heap.  When done, or when we run low on space
- *             for dead-tuple TIDs, invoke vacuuming of indexes and heap.
+ *             This routine prunes each page in the heap, which will among other
+ *             things truncate dead tuples to dead line pointers, defragment the
+ *             page, and set commit status bits (see heap_page_prune).  It also builds
+ *             lists of dead tuples and pages with free space, calculates statistics
+ *             on the number of live tuples in the heap, and marks pages as
+ *             all-visible if appropriate.  When done, or when we run low on space for
+ *             dead-tuple TIDs, invoke vacuuming of indexes and call lazy_vacuum_heap
+ *             to reclaim dead line pointers.
  *
- *             If there are no indexes then we just vacuum each dirty page as we
- *             process it, since there's no point in gathering many tuples.
+ *             If there are no indexes then we can reclaim line pointers on the fly;
+ *             dead line pointers need only be retained until all index pointers that
+ *             reference them have been killed.
  */
 static void
 lazy_scan_heap(Relation onerel, LVRelStats *vacrelstats,