Re: ICU integration - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: ICU integration
Date
Msg-id f0e24354-31f1-47cd-c384-e41d72d43e83@2ndquadrant.com
Whole thread Raw
In response to Re: ICU integration  (Craig Ringer <craig@2ndquadrant.com>)
Responses Re: ICU integration  (Michael Paquier <michael.paquier@gmail.com>)
Re: ICU integration  (Doug Doole <ddoole@salesforce.com>)
List 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



pgsql-hackers by date:

Previous
From: Joel Jacobson
Date:
Subject: Re: autonomous transactions
Next
From: Peter Eisentraut
Date:
Subject: sequence data type