Tomas Vondra <tomas.vondra@2ndquadrant.com> writes:
> It would be really great if you could explain why BitmapScans are
> dubious, instead of just labeling them as dubious. (I guess you mean
> Bitmap Heap Scans, right?)
The two things I'm aware of are (a) the assumption you noted, that
fetching tuples in TID sort order is a reasonably efficient thing,
and (b) the "offset" part of a TID can't exceed MaxHeapTuplesPerPage
--- see data structure in tidbitmap.c. The latter issue means that
you don't really have a full six bytes to play with in a TID, only
about five.
I don't think (b) would be terribly hard to fix if we had a motivation to,
but I wonder whether there aren't other places that also know this about
TIDs.
regards, tom lane