pgsql: Fix error inconsistency in older ICU versions.

Поиск
Список
Период
Сортировка
От Jeff Davis
Тема pgsql: Fix error inconsistency in older ICU versions.
Дата
Msg-id E1phBC9-000AYP-T6@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Fix error inconsistency in older ICU versions.

To support older ICU versions, we rely on
icu_set_collation_attributes() to do error checking that is handled
directly by ucol_open() in newer ICU versions. Commit 3b50275b12
introduced a slight inconsistency, where the error report includes the
fixed-up locale string, rather than the locale string passed to
pg_ucol_open().

Refactor slightly so that pg_ucol_open() handles the errors from both
ucol_open() and icu_set_collation_attributes(), making it easier to
see any differences between the error reports. It also makes
pg_ucol_open() responsible for closing the UCollator on error, which
seems like the right place.

Discussion: https://postgr.es/m/04182066-7655-344a-b8b7-040b1b2490fb%40enterprisedb.com
Reviewed-by: Peter Eisentraut

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/8b3eb0c584beabfc0deaad01aed66cbddb978dcd

Modified Files
--------------
src/backend/utils/adt/pg_locale.c | 62 +++++++++++++++++++++------------------
1 file changed, 34 insertions(+), 28 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: pgsql: Save a few bytes in pg_attribute
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: Fix corner-case planner failure for MERGE.