Re: Rework of collation code, extensibility

From: Jeff Davis <pgsql(at)j-davis(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Rework of collation code, extensibility
Date: 2022-12-22 05:40:57
Message-ID: a20de213c75fe471d067eecc1ac65e0edb9af377.camel@j-davis.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sat, 2022-12-17 at 19:14 -0800, Jeff Davis wrote:
> Attached is a new patch series. I think there are enough changes that
> this has become more of a "rework" of the collation code rather than
> just a refactoring. This is a continuation of some prior work[1][2]
> in
> a new thread given its new scope.

Here's version 5. There are a number of fixes, and better tests, and
it's passing in CI.

The libc hook support is still experimental, but what's working is
passing in CI, even on windows. The challenges with libc hook support
are:

* It obviously doesn't replace all of libc, so the separation is not
as clean and there are a number of callers throughout the code that
don't necessarily care about specific collations.

* libc relies on setlocale() / uselocale(), which is global state and
not as easy to track.

* More platform issues (obviously) and harder to test.

--
Jeff Davis
PostgreSQL Contributor Team - AWS

Attachment Content-Type Size
v5-0007-Add-test-module-for-libc-collation-provider-hook.patch text/x-patch 26.7 KB
v5-0006-Support-multiple-libc-collation-provider-librarie.patch text/x-patch 21.4 KB
v5-0005-Add-test-module-for-icu-collation-provider-hook.patch text/x-patch 17.8 KB
v5-0004-Support-multiple-ICU-collation-provider-libraries.patch text/x-patch 32.0 KB
v5-0003-Refactor-pg_locale_t-routines.patch text/x-patch 42.7 KB
v5-0002-Add-pg_strxfrm-and-pg_strxfrm_prefix.patch text/x-patch 25.6 KB
v5-0001-Add-pg_strcoll-and-pg_strncoll.patch text/x-patch 19.3 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Hayato Kuroda (Fujitsu) 2022-12-22 05:46:11 Exit walsender before confirming remote flush in logical replication
Previous Message Thomas Munro 2022-12-22 05:36:58 Re: psql tab-complete