Well this should be fun ... "Beware of your next glibc upgrade"
postgresql.verite.pro/blog/2018/08/2
Conversation
We need ICU collations that are usable as DB/cluster default.
Behavior of glibc collations is explicitly allowed to change. There is no mechanism in place to detect incompatibility. *Every* glibc upgrade should be assumed unsafe.
2
1
3
What do you think about the idea of a system_collation_version_command GUC, and a set of shell scripts for common operating systems?
1
Meh. There is some versioning info in glibc, actually, but it uses a non-standard interface, and might not be any good. I'd rather deal with the problem once, comprehensively. We should be able to certify compatibility of on-disk format with easy-to-use tool.
2
I don't buy the argument that OS is intrinsically best place for collations. Users have a bunch of vendored ICUs without even realizing it, or use different collations on client and server side.
1
Yeah. I have mixed feelings about that TBH. I don't really want a proliferation of disagreeing copies of tzinfo hiding in my software stack, and likewise for this stuff.
1
1
I sympathize, but the reality is that OS vendors won't get it right precisely because hardly anyone expects them to. This is why we can't have nice things.
1
Just about all of the prominent distro's won't allow redundant ICU/tzdata/blablub copies in their packages. That's where a large percentage of our users gets their postgres from.
1
Maybe I should have said libc vendors. Having a defacto standard system for versioning collations matters. I would like to see ICU become that defacto standard.
Interestingly, it looks like the glibc activity may be about getting in sync with CLDR. CLDR is also the source of collation data for ICU, and libc on some other operating systems (FreeBSD, Illumos, ...). Hmm.
fedoraproject.org/wiki/Changes/G
1
Pretty much every proprietary DB uses vendored CLDR collations, at least as an option (e.g., Oracle 12c introduced UCA support). CLDR version is implied by UCA version.
Duplicating the work of the Unicode consortium for the rest of time would be utter folly for vendors.
1
Show replies



