From: | Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com> |
---|---|
To: | Craig Ringer <craig(at)2ndquadrant(dot)com> |
Cc: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: ICU integration |
Date: | 2016-08-31 04:12:34 |
Message-ID: | f0e24354-31f1-47cd-c384-e41d72d43e83@2ndquadrant.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 8/30/16 11:27 PM, Craig Ringer wrote:
> Speaking of which, have you had a chance to try it on Windows yet?
nope
> How stable are the UCU locales? Most importantly, does ICU offer any
> way to "pin" a locale version, so we can say "we want de_DE as it was
> in ICU 4.6" and get consistent behaviour when the user sets up a
> replica on some other system with ICU 4.8? Even if the German
> government has changed its mind (again) about some details of the
> language and 4.8 knows about the changes but 4.4 doesn't?
I forgot to mention this, but the patch adds a collversion column that
stores the collation version (provided by ICU). And then when you
upgrade ICU to something incompatible you get
+ if (numversion != collform->collversion)
+ ereport(WARNING,
+ (errmsg("ICU collator version mismatch"),
+ errdetail("The database was created using
version 0x%08X, the library provides version 0x%08X.",
+ (uint32) collform->collversion,
(uint32) numversion),
+ errhint("Rebuild affected indexes, or build
PostgreSQL with the right version of ICU.")));
So you still need to manage this carefully, but at least you have a
chance to learn about it.
Suggestions for refining this are welcome.
--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Eisentraut | 2016-08-31 04:22:24 | sequence data type |
Previous Message | Joel Jacobson | 2016-08-31 04:10:31 | Re: autonomous transactions |