mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-01-06 15:24:56 +08:00
Fix broken hash function hashbpcharextended().
Ignore trailing spaces for non-deterministic collations when hashing. The previous behavior could lead to tuples falling into the wrong partitions when hash partitioning is combined with the BPCHAR type and a non-deterministic collation. Fortunately, it did not affect hash indexes, because hash indexes do not use extended hash functions. Decline to backpatch, per discussion. Discussion: https://postgr.es/m/eb83d0ac7b299eb08f9b900dd08a5a0c5d90e517.camel@j-davis.com Reviewed-by: Richard Guo, Tom Lane
This commit is contained in:
parent
4c689a69ee
commit
7ac0f8d384
@ -1086,7 +1086,7 @@ hashbpcharextended(PG_FUNCTION_ARGS)
|
||||
Size bsize;
|
||||
uint8_t *buf;
|
||||
|
||||
ulen = icu_to_uchar(&uchar, VARDATA_ANY(key), VARSIZE_ANY_EXHDR(key));
|
||||
ulen = icu_to_uchar(&uchar, keydata, keylen);
|
||||
|
||||
bsize = ucol_getSortKey(mylocale->info.icu.ucol,
|
||||
uchar, ulen, NULL, 0);
|
||||
|
Loading…
Reference in New Issue
Block a user