pgsql: Allow setting the collation strength in ICU tailoring rules

From: Peter Eisentraut <peter(at)eisentraut(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Allow setting the collation strength in ICU tailoring rules
Date: 2026-03-18 08:11:58
Message-ID: E1w2m0U-000IRA-0L@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Allow setting the collation strength in ICU tailoring rules

There was a bug that if you created an ICU collation with tailoring
rules, any strength specification inside the rules was ignored. This
was because we called ucol_openRules() with UCOL_DEFAULT_STRENGTH for
the strength argument, which overrides the strength. This was because
of faulty guidance in the ICU documentation, which has since been
fixed. The correct invocation is to use UCOL_DEFAULT for the strength
argument.

This fixes bug #18771 and bug #19425.

Author: Daniel Verite <daniel(at)manitou-mail(dot)org>
Reported-by: Ruben Ruiz <ruben(dot)ruizcuadrado(at)gmail(dot)com>
Reported-by: dorian(dot)752(at)live(dot)fr
Reported-by: Todd Lang <Todd(dot)Lang(at)D2L(dot)com>
Discussion: https://www.postgresql.org/message-id/flat/YT2PPF959236618377A072745A280E278F4BE1DA(at)YT2PPF959236618(dot)CANPRD01(dot)PROD(dot)OUTLOOK(dot)COM
Discussion: https://www.postgresql.org/message-id/flat/18771-98bb23e455b0f367(at)postgresql(dot)org
Discussion: https://www.postgresql.org/message-id/flat/19425-58915e19dacd4f40%40postgresql.org

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/905e44152a1d49b90cb8d800dcaaba7981288ae2

Modified Files
--------------
src/backend/utils/adt/pg_locale_icu.c | 2 +-
src/test/regress/expected/collate.icu.utf8.out | 8 ++++++++
src/test/regress/sql/collate.icu.utf8.sql | 4 ++++
3 files changed, 13 insertions(+), 1 deletion(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Peter Eisentraut 2026-03-18 10:09:35 pgsql: meson: Add {perl|python}_includespec to generated Makefile.globa
Previous Message David Rowley 2026-03-18 04:22:25 pgsql: Move planner row-estimation tests to new planner_est.sql