On 07.03.25 19:50, Tom Lane wrote:
> 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.
Agreed, done.