>>>>> "Tom" == Tom Lane <tgl@sss.pgh.pa.us> writes:
Tom> One huge advantage is that the actual heap visiting becomes Tom> efficient, eg you never visit the same page
morethan once. Tom> (What you lose is the ability to retrieve data in index Tom> order, so this isn't a replacement
forexisting indexscan Tom> methods, just another plan type to consider.)
Even without bitmap indexes, without trying to use multiple indexes
etc. this (visiting a page only once) is useful.
In other words, I'd like to see the indexscan broken up into: (1) an
operator that returns a list of TIDs, (2) Sort the TIDs and (3) an
operator that fetches heap tuples from the sorted TID list.
Of course the resulting data from the heap will be out of order but
that often times is less important than unnecessarily visiting (and
possibly even re-fetching from disk) the same heap page twice for a
given index scan.
--
Pip-pip
Sailesh
http://www.cs.berkeley.edu/~sailesh