From d72900bdedc60fe20bc50d5d0e7dcb4bc0eb304e Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Mon, 13 Mar 2023 09:04:41 +0100 Subject: [PATCH] Improve support for UNICODE collation on older ICU The recently added standard collation UNICODE (0d21d4b9bc) doesn't give consistent results on some build farm members with old ICU versions. Apparently, the ICU locale specification 'und' (language tag style) misbehaves on some older ICU versions. Replacing it with '' (ICU locale ID style) fixes it at least on some OS versions. Let's see what the build farm says. --- src/bin/initdb/initdb.c | 2 +- src/include/catalog/catversion.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index d48b7b6060..68d430ed63 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1498,7 +1498,7 @@ setup_collation(FILE *cmdfd) * that they win if libc defines a locale with the same name. */ PG_CMD_PRINTF("INSERT INTO pg_collation (oid, collname, collnamespace, collowner, collprovider, collisdeterministic, collencoding, colliculocale)" - "VALUES (pg_nextoid('pg_catalog.pg_collation', 'oid', 'pg_catalog.pg_collation_oid_index'), 'unicode', 'pg_catalog'::regnamespace, %u, '%c', true, -1, 'und');\n\n", + "VALUES (pg_nextoid('pg_catalog.pg_collation', 'oid', 'pg_catalog.pg_collation_oid_index'), 'unicode', 'pg_catalog'::regnamespace, %u, '%c', true, -1, '');\n\n", BOOTSTRAP_SUPERUSERID, COLLPROVIDER_ICU); PG_CMD_PRINTF("INSERT INTO pg_collation (oid, collname, collnamespace, collowner, collprovider, collisdeterministic, collencoding, collcollate, collctype)" diff --git a/src/include/catalog/catversion.h b/src/include/catalog/catversion.h index 5d1b957ed4..989c3ada38 100644 --- a/src/include/catalog/catversion.h +++ b/src/include/catalog/catversion.h @@ -57,6 +57,6 @@ */ /* yyyymmddN */ -#define CATALOG_VERSION_NO 202303101 +#define CATALOG_VERSION_NO 202303131 #endif