pgsql: Fix planner's test for case-foldable characters in ILIKE with IC

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

pgsql: Fix planner's test for case-foldable characters in ILIKE with IC

Tom Lane-2
Fix planner's test for case-foldable characters in ILIKE with ICU.

As coded, the ICU-collation path in pattern_char_isalpha() failed
to consider regular ASCII letters to be case-varying.  This led to
like_fixed_prefix treating too much of an ILIKE pattern as being a
fixed prefix, so that indexscans derived from an ILIKE clause might
miss entries that they should find.

Per bug #15892 from James Inform.  This is an oversight in the original
ICU patch (commit eccfef81e), so back-patch to v10 where that came in.

Discussion: https://postgr.es/m/15892-e5d2bea3e8a04a1b@...

Branch
------
REL_10_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/886cf85b52cfdd84c0ff9b24193c7e0e0035b1c7

Modified Files
--------------
src/backend/utils/adt/selfuncs.c               | 10 ++++----
src/test/regress/expected/collate.icu.utf8.out | 32 ++++++++++++++++++++++++++
src/test/regress/sql/collate.icu.utf8.sql      |  9 ++++++++
3 files changed, 47 insertions(+), 4 deletions(-)