Gregory Stark <stark@enterprisedb.com> writes:
> There are a couple problems with this:
> a) We need some way to decide *when* to do a sort and when to do an index
> scan. The planner has all this machinery but we don't really have all the
> pieces handy to use it in a utility statement.
Why not? You don't even need any quals when trying to cost a full-index
scan.
> b) tuplesort no longer has the pieces needed to sort whole tuples including
> visibility info. And actually even the old pieces that were removed had not
> quite the right interface and behaviour. We need to preserve t_self for the
> heap rewrite tools and we need to be able to use _bt_mkscankey_nodata() to
> generate the scan keys that match the index.
So you just broke it irredeemably for non-btree indexes, no?
regards, tom lane