I am looking at adding an index tuple flag to indicate when a heap tuple
is expired so the index code can skip looking up the heap tuple.
The problem is that I can't figure out how be sure that the heap tuple
doesn't need to be looked at by _any_ backend. Right now, we update the
transaction commit flags in the heap tuple to prevent a pg_log lookup,
but that is not enough because some transactions may still see that heap
tuple as visible.
Vacuum has a complex test that looks a currently running transactions
and stuff. Do I have to duplicate that test in the new code? Seems I
do.
-- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610)
853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill,
Pennsylvania19026