From: | Jeff Davis <pgsql(at)j-davis(dot)com> |
---|---|
To: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Rework of collation code, extensibility |
Date: | 2022-12-18 03:14:23 |
Message-ID: | a581136455c940d7bd0ff482d3a2bd51af25a94f.camel@j-davis.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
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.
Benefits:
1. Clearer division of responsibilities.
2. More consistent between libc and ICU providers.
3. Hooks that allow extensions to replace collation provider libraries.
4. New tests for the collation provider library hooks.
There are a lot of changes, and still some loose ends, but I believe a
few of these patches are close to ready.
This set of changes does not express an opinion on how we might want to
support multiple provider libraries in core; but whatever we choose, it
should be easier to accomplish. Right now, the hooks have limited
information on which to make the choice for a specific version of a
collation provider library, but that's because there's limited
information in the catalog. If the discussion here[3] concludes in
adding collation provider library or library version information to the
catalog, we can add additional parameters to the hooks.
[1]
https://postgr.es/m/99aa79cceefd1fe84fda23510494b8fbb7ad1e70.camel@j-davis.com
[2]
https://postgr.es/m/c4fda90ec6a7568a896f243a38eb273c3b5c3d93.camel@j-davis.com
[3]
https://postgr.es/m/CA+hUKGLEqMhnpZrgAcisoUeYFGz8W6EWdhtK2h-4QN0iOSFRqw@mail.gmail.com
--
Jeff Davis
PostgreSQL Contributor Team - AWS
Attachment | Content-Type | Size |
---|---|---|
v4-0001-Add-pg_strcoll-and-pg_strncoll.patch | text/x-patch | 19.3 KB |
v4-0002-Add-pg_strxfrm-and-pg_strxfrm_prefix.patch | text/x-patch | 25.6 KB |
v4-0003-Refactor-pg_locale_t-routines.patch | text/x-patch | 42.7 KB |
v4-0004-Support-multiple-ICU-collation-provider-libraries.patch | text/x-patch | 32.0 KB |
v4-0005-Support-multiple-libc-collation-provider-librarie.patch | text/x-patch | 18.8 KB |
v4-0006-Add-tests-for-collation-provider-hooks.patch | text/x-patch | 30.6 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Ted Yu | 2022-12-18 03:27:20 | Re: Rework of collation code, extensibility |
Previous Message | Christophe Pettus | 2022-12-18 02:23:27 | Re: BUG #17717: Regression in vacuumdb (15 is slower than 10/11 and possible memory issue) |