Re: Collation versioning
Thomas Munro <thomas.munro@gmail.com>
From: Thomas Munro <thomas.munro@gmail.com>
To: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
Cc: Julien Rouhaud <rjuju123@gmail.com>, Douglas Doole <dougdoole@gmail.com>, Thomas Munro <thomas.munro@enterprisedb.com>,
Christoph Berg <myon@debian.org>, Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2019-11-08T01:32:33Z
Lists: pgsql-hackers
On Thu, Nov 7, 2019 at 1:27 AM Peter Eisentraut <peter.eisentraut@2ndquadrant.com> wrote: > As I was working on that lately, I came to the conclusion that we should > get *this* patch done first. Cool. Let's aim to get this into 13! > > * Some have expressed doubt that pg_depend is the right place for > > this; let's see if any counter-proposals appear. > > The only alternative is to create a new catalog that contains exactly > the same columns as pg_depend (minus deptype) plus the version. That > would work but it would just create a lot of code duplication, I think. Agreed. > One thing I've been thinking about is whether this object-version > concept could extend to other object types. For example, if someone > changes the binary layout of a type, they could change the version of > the type, and this catalog could track the type version in the column -> > type dependency. Obviously, a lot more work would have to be done to > make this work, but I think the concept of this catalog is sound. Interesting idea. Sounds like it requires version checks that actually stop you from using the dependent object, instead of emitting a few meek warnings.
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