IIRC, what was being talked about was shoehorning some hint bits into
the line pointers by assuming that size and offset are multiples of 4.
I'm not thrilled with having mutable status bits there for reliability
reasons, but it could be done without breaking a lot of existing code.
What I was reacting to above was a suggestion that we could delete the
itempointer size field altogether, which seems unworkable for the
reasons I mentioned.
I think then we can pursue on using the IndexTuple structure similar to HeapTuple(as you have suggested in an earlier update). This would involve(i believe)
a) Making the current IndexTuple into IndexTupleHeader
b) Creating a new structure called IndexTuple which will store the size and the have a pointer to IndexTupleHeader.
But Tom, can you please explain me why that broken ordering example doesn't affect the current index scans.
Thanks,
Gokul.