Fix two bugs in tsquery @> operator.
authorHeikki Linnakangas <[email protected]>
Mon, 27 Oct 2014 08:50:41 +0000 (10:50 +0200)
committerHeikki Linnakangas <[email protected]>
Mon, 27 Oct 2014 08:51:33 +0000 (10:51 +0200)
commit604d94d4cacc787bfa41452785a2927c24829fc5
tree45f59400594a66aee30b9b2d76bc95f0a35f0b13
parent4586572d789952f2be64faaa2c3e00e549162aec
Fix two bugs in tsquery @> operator.

1. The comparison for matching terms used only the CRC to decide if there's
a match. Two different terms with the same CRC gave a match.

2. It assumed that if the second operand has more terms than the first, it's
never a match. That assumption is bogus, because there can be duplicate
terms in either operand.

Rewrite the implementation in a way that doesn't have those bugs.

Backpatch to all supported versions.
src/backend/utils/adt/tsquery_op.c