Re: Move defaults toward ICU in 16? - Mailing list pgsql-hackers

From Laurenz Albe
Subject Re: Move defaults toward ICU in 16?
Date
Msg-id dbb403c817fcd17c0757a2772351f3159fd44581.camel@cybertec.at
Whole thread Raw
In response to Re: Move defaults toward ICU in 16?  (Robert Haas <robertmhaas@gmail.com>)
List pgsql-hackers
On Thu, 2023-02-16 at 15:05 +0530, Robert Haas wrote:
> On Thu, Feb 16, 2023 at 1:01 AM Jeff Davis <pgsql@j-davis.com> wrote:
> > It feels very wrong to me to explain that sort order is defined by the
> > operating system on which Postgres happens to run. Saying that it's
> > defined by ICU, which is part of the Unicode consotium, is much better.
> > It doesn't eliminate versioning issues, of course, but I think it's a
> > better explanation for users.
>
> The fact that we can't use ICU on Windows, though, weakens this
> argument a lot. In my experience, we have a lot of Windows users, and
> they're not any happier with the operating system collations than
> Linux users. Possibly less so.
>
> I feel like this is a very difficult kind of change to judge. If
> everyone else feels this is a win, we should go with it, and hopefully
> we'll end up better off. I do feel like there are things that could go
> wrong, though, between the imperfect documentation, the fact that a
> substantial chunk of our users won't be able to use it because they
> run Windows, and everybody having to adjust to the behavior change.

Unless I misunderstand, the lack of Windows support is not a matter
of principle and can be added later on, right?

I am in favor of changing the default.  It might be good to add a section
to the documentation in "Server setup and operation" recommending that
if you go with the default choice of ICU, you should configure your
package manager not to upgrade the ICU library.

Yours,
Laurenz Albe



pgsql-hackers by date:

Previous
From: Richard Guo
Date:
Subject: Re: wrong query result due to wang plan
Next
From: Amit Kapila
Date:
Subject: Re: Change xl_hash_vacuum_one_page.ntuples from int to uint16