Re: Collation versioning
Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
From: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
To: Thomas Munro <thomas.munro@enterprisedb.com>,
Christoph Berg <myon@debian.org>, Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2019-10-02T18:52:31Z
Lists: pgsql-hackers
On 2018-09-05 23:18, Thomas Munro wrote: > On Wed, Sep 5, 2018 at 12:10 PM Christoph Berg <myon@debian.org> wrote: >>> So, it's not ideal but perhaps worth considering on the grounds that >>> it's better than nothing? >> >> Ack. > > Ok, here's a little patch like that. > > postgres=# select collname, collcollate, collversion from pg_collation > where collname = 'en_NZ'; > collname | collcollate | collversion > ----------+-------------+------------- > en_NZ | en_NZ.utf8 | 2.24 > (1 row) After, um, briefly sleeping on this, I would like to go ahead with this. There is ongoing work to make ICU available globally, and as part of that I've also proposed a way to make the collation version tracking work on a database level. This here would be a useful piece on the overall picture. Independent of what becomes of the ICU effort, we could have glibc collation version tracking completely working for PG13. The only open question on this patch was whether it's a good version to use. I think based on subsequent discussions, there was the realization that this is the best we can do and better than nothing. In the patch, I would skip the configure test and just do #ifdef __GLIBC__ directly. -- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Commits
-
Doc: Document known problem with Windows collation versions.
- 1bf946bd43e5 14.0 landed
-
Add collation versions for FreeBSD.
- ca051d8b101d 14.0 landed
-
Tolerate version lookup failure for old style Windows locale names.
- 9f12a3b95dd5 14.0 landed
-
Track collation versions for indexes.
- 257836a75585 14.0 landed
-
Add pg_depend.refobjversion.
- cd6f479e79f3 14.0 landed
-
Remove pg_collation.collversion.
- 7d1297df0830 14.0 landed
-
Fix the MSVC build for versions 2015 and later.
- a169155453e3 13.0 cited
-
Add collation versions for Windows.
- 352f6f2df60f 13.0 cited
-
Implement type regcollation
- a2b1faa0f279 13.0 landed
-
Use libc version as a collation version on glibc systems.
- d5ac14f9ccdd 13.0 landed
- 9f90b1d08d79 13.0 landed
-
Make type "name" collation-aware.
- 586b98fdf1aa 12.0 cited