[COMMITTERS] pgsql: Allow creation of C/POSIX collations without depending on libcb - Mailing list pgsql-committers

From Tom Lane
Subject [COMMITTERS] pgsql: Allow creation of C/POSIX collations without depending on libcb
Date
Msg-id E1dcbK3-0000ag-12@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Allow creation of C/POSIX collations without depending on libc behavior.

Most of our collations code has special handling for the locale names
"C" and "POSIX", allowing those collations to be used whether or not
the system libraries think those locale names are valid, or indeed
whether said libraries even have any locale support.  But we missed
handling things that way in CREATE COLLATION.  This meant you couldn't
clone the C/POSIX collations, nor explicitly define a new collation
using those locale names, unless the libraries allow it.  That's pretty
pointless, as well as being a violation of pg_newlocale_from_collation's
API specification.

The practical effect of this change is quite limited: it allows creating
such collations even on platforms that don't HAVE_LOCALE_T, and it allows
making "POSIX" collation objects on Windows, which before this would only
let you make "C" collation objects.  Hence, even though this is a bug fix
IMO, it doesn't seem worth the trouble to back-patch.

In passing, suppress the DROP CASCADE detail messages at the end of the
collation regression test.  I'm surprised we've never been bit by
message ordering issues there.

Per report from Murtuza Zabuawala.

Discussion: https://postgr.es/m/CAKKotZS-wcDcofXDCH=sidiuajE+nqHn2CGjLLX78anyDmi3gQ@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/f97256570f45c33abf695a189ab11b25e6cd7985

Modified Files
--------------
src/backend/commands/collationcmds.c  | 12 ++++++++----
src/test/regress/expected/collate.out | 29 +++++++++++++----------------
src/test/regress/sql/collate.sql      | 12 ++++++++++++
3 files changed, 33 insertions(+), 20 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: [COMMITTERS] pgsql: Further improve consistency of configure's program searching.
Next
From: Peter Eisentraut
Date:
Subject: [COMMITTERS] pgsql: doc: Fix typo