Peter Eisentraut <peter@eisentraut.org> writes:
> I have committed fixes for these issues along the lines you suggested.
Thanks. There is a typo in hashhandler:
- amroutine->amcancrosscompare = true;
+ amroutine->amconsistentequality = true;
+ amroutine->amconsistentequality = false;
The second line should be setting amconsistentordering = false.
Also, may I suggest one more thing? I think the test in
comparison_ops_are_compatible should be just
- if (amroutine->amcanorder && amroutine->amconsistentordering)
+ if (amroutine->amconsistentordering)
(and the comment for it needs adjustment too). To my mind,
amconsistentordering is a static declaration that operators
within one of the AM's opfamilies are expected to have this
property. That could be true whether or not the AM is capable
of returning tuples in order. So although these flags might
commonly be set together, I think they are independent
properties.
regards, tom lane