Обсуждение: Question about using ICU

Поиск
Список
Период
Сортировка

Question about using ICU

От
Paul Förster
Дата:
Hi,

I have a general question about the use of ICU. Currently, we have PostgreSQL compiled from source (Linux) without ICU
support.All database clusters and databases are UTF8 and of course relying on glibc. 

With the sooner or later upcoming glibc release 2.28, there will probably a big reindex operation be necessary. To
avoidthat, I'd like to use ICU. 

Compiling --with-icu into the new software, is there a way to make a whole database cluster and all its databases use
anICU without having to manually change all tables or indexes? 

Cheers,
Paul


Re: Question about using ICU

От
Laurenz Albe
Дата:
On Mon, 2020-09-28 at 10:02 +0200, Paul Förster wrote:
> I have a general question about the use of ICU. Currently, we have PostgreSQL compiled
>  from source (Linux) without ICU support. All database clusters and databases are UTF8
>  and of course relying on glibc.
> 
> With the sooner or later upcoming glibc release 2.28, there will probably a big reindex
>  operation be necessary. To avoid that, I'd like to use ICU.
> 
> Compiling --with-icu into the new software, is there a way to make a whole database cluster
>  and all its databases use an ICU without having to manually change all tables or indexes?

There have been efforts to add this functionality:
https://www.postgresql.org/message-id/flat/5e756dd6-0e91-d778-96fd-b1bcb06c161a%402ndquadrant.com
but it didn't get done.

Your best bet is to manually change the definition of all columns to use the new collation.
psql's \gexec may help.

Yours,
Laurenz Albe
-- 
Cybertec | https://www.cybertec-postgresql.com




Re: Question about using ICU

От
Paul Förster
Дата:
Hi Laurenz,

> On 28. Sep, 2020, at 11:04, Laurenz Albe <laurenz.albe@cybertec.at> wrote:
>
> There have been efforts to add this functionality:
> https://www.postgresql.org/message-id/flat/5e756dd6-0e91-d778-96fd-b1bcb06c161a%402ndquadrant.com
> but it didn't get done.

seems to be a rather complex thing according to the thread.

> Your best bet is to manually change the definition of all columns to use the new collation.
> psql's \gexec may help.

but then I'd have to do a reindex anyway, right? My goal was to avoid the reindex altogether, if possible.

Cheers,
Paul


Re: Question about using ICU

От
Laurenz Albe
Дата:
On Mon, 2020-09-28 at 11:45 +0200, Paul Förster wrote:
> > Your best bet is to manually change the definition of all columns to use the new collation.
> > psql's \gexec may help.
> 
> but then I'd have to do a reindex anyway, right? My goal was to avoid the reindex altogether, if possible.

That couldn't be avoided anyway if you change the collation no matter
if you do it on the database or on the column level.

Yours,
Laurenz Albe
-- 
Cybertec | https://www.cybertec-postgresql.com




Re: Question about using ICU

От
Paul Förster
Дата:
Hi Laurenz,

> On 28. Sep, 2020, at 13:13, Laurenz Albe <laurenz.albe@cybertec.at> wrote:
>>
>> but then I'd have to do a reindex anyway, right? My goal was to avoid the reindex altogether, if possible.
>
> That couldn't be avoided anyway if you change the collation no matter
> if you do it on the database or on the column level.

ok, thanks.

Cheers,
Paul