Mark bpchareq not hashjoinable, since it strips trailing blanks
Tom Lane <tgl@sss.pgh.pa.us>
Mark bpchareq not hashjoinable, since it strips trailing blanks before comparison; if fields being joined are different widths then hashing will yield wrong answer. Also, remove hashjoinable mark from all uses of array_eq, because array structures may have padding bytes between elements and the pad bytes are of uncertain content. This could be revisited if array code is cleaned up. Modify opr_sanity regress test to complain if array_eq operator is marked hashjoinable.
Files
| Path | Change | +/− |
|---|---|---|
| src/include/catalog/pg_operator.h | modified | +22 −22 |
| src/test/regress/expected/opr_sanity.out | modified | +5 −8 |
| src/test/regress/sql/opr_sanity.sql | modified | +22 −9 |