Re: Collation versioning
Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
From: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
To: Douglas Doole <dougdoole@gmail.com>,
Thomas Munro <thomas.munro@enterprisedb.com>
Cc: Christoph Berg <myon@debian.org>,
Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2018-09-27T21:29:52Z
Lists: pgsql-hackers
On 16/09/2018 20:12, Douglas Doole wrote: > All this collation stuff is great, and I know users want it, but it > feels like were pushing them out of an airplane with a ripped parachute > every time the collation libraries change. Maybe they'll land safely or > maybe things will get very messy. At some point, a schema designer also needs to take some responsibility for making smart choices for longevity. It is known that collations can change, and the sort of changes that can happen are also generally understood. So if you want to use range partitioning on text fields, maybe you shouldn't, or at least choose the ranges conservatively. Similarly, maybe you shouldn't have timestamp range partition boundaries around DST changes or on the 29th of every month, and maybe you shouldn't partition float values at negative zero. Some ideas are better than others. We will help you recognize and fix breakage, but we can't prevent it altogether. -- 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