initdb: Set collversion for standard collation UNICODE
Since the behavior of the UNICODE collation can change with new ICU/Unicode versions, we need to apply the versioning mechanism to it. We do this with an UPDATE command in initdb; this is similar to how we put the collation version into pg_database already. Reported-by: Daniel Verite <daniel@manitou-mail.org> Discussion: https://www.postgresql.org/message-id/49417853-7bdd-4b23-a4e9-04c7aff33821@manitou-mail.org
This commit is contained in:
parent
c8b881d21f
commit
e32701b8d2
|
@ -1695,6 +1695,13 @@ setup_description(FILE *cmdfd)
|
|||
static void
|
||||
setup_collation(FILE *cmdfd)
|
||||
{
|
||||
/*
|
||||
* Set the collation version for collations defined in pg_collation.dat,
|
||||
* but not the ones where we know that the collation behavior will never
|
||||
* change.
|
||||
*/
|
||||
PG_CMD_PUTS("UPDATE pg_collation SET collversion = pg_collation_actual_version(oid) WHERE collname = 'unicode';\n\n");
|
||||
|
||||
/* Import all collations we can find in the operating system */
|
||||
PG_CMD_PUTS("SELECT pg_import_system_collations('pg_catalog');\n\n");
|
||||
}
|
||||
|
|
|
@ -57,6 +57,6 @@
|
|||
*/
|
||||
|
||||
/* yyyymmddN */
|
||||
#define CATALOG_VERSION_NO 202305041
|
||||
#define CATALOG_VERSION_NO 202305121
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue