Disallow partitionwise join when collations don't match If the collation of any join key column doesn’t match the collation of the corresponding partition key, partitionwise joins can yield incorrect results. For example, rows that would match under the join key collation might be located in different partitions due to the partitioning collation. In such cases, a partitionwise join would yield different results from a non-partitionwise join, so disallow it in such cases.
Reported-by: Tender Wang <[email protected]> Author: Jian He <[email protected]> Reviewed-by: Tender Wang <[email protected]> Reviewed-by: Junwang Zhao <[email protected]> Discussion: https://postgr.es/m/cahewxnno_hkiq6pqylyfuqdtwp7kkhzih1j7pqyz0nr+ps2...@mail.gmail.com Backpatch-through: 12 Branch ------ REL_16_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/f734b6b4d0cc6194cb93d74f179c8471306ea3b9 Modified Files -------------- src/backend/optimizer/util/relnode.c | 4 + src/test/regress/expected/collate.icu.utf8.out | 118 +++++++++++++++++++++++++ src/test/regress/sql/collate.icu.utf8.sql | 22 +++++ 3 files changed, 144 insertions(+)
