Fix oversight in construction of sort/unique plans for UniquePaths.
authorTom Lane <[email protected]>
Tue, 25 May 2010 17:44:47 +0000 (17:44 +0000)
committerTom Lane <[email protected]>
Tue, 25 May 2010 17:44:47 +0000 (17:44 +0000)
commitbb6e270ae31e25d8a7d43056cffadfc061f61a12
treee20adfc5231c6e44de758ff37689e26adde6863d
parent0870648c2f049f7c3979dba9fbfdfda5f1c54dc6
Fix oversight in construction of sort/unique plans for UniquePaths.
If the original IN operator is cross-type, for example int8 = int4,
we need to use int4 < int4 to sort the inner data and int4 = int4
to unique-ify it.  We got the first part of that right, but tried to
use the original IN operator for the equality checks.  Per bug #5472
from Vlad Romascanu.

Backpatch to 8.4, where the bug was introduced by the patch that unified
SortClause and GroupClause.  I was able to take out a whole lot of on-the-fly
calls of get_equality_op_for_ordering_op(), but failed to realize that
I needed to put one back in right here :-(
src/backend/optimizer/plan/createplan.c