"Pavan Deolasee" <[EMAIL PROTECTED]> writes: > I wonder if we should refactor lazy_scan_heap() so that *all* the real work > of collecting information about dead tuples happens only in > heap_page_prune(). Frankly, there is only a rare chance that a tuple may > become DEAD after the pruning happened on the page. We can ignore such > tuples; they will be vacuumed/pruned in the next cycle.
> This would save us a second check of HeapTupleSatisfiesVacuum on the tuples > which are just now checked in heap_page_prune(). In addition, the following > additional WAL records are then not necessary because heap_page_prune() must > have already logged the latestRemovedXid. I don't think you can do that. Couldn't someone else have run heap_page_prune between vacuum's first and second visit to the page? regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers