Re: Postgres 12: backend crashes when creating non-deterministic collation - Mailing list pgsql-general

From Daniel Verite
Subject Re: Postgres 12: backend crashes when creating non-deterministic collation
Date
Msg-id 60e84145-3db4-4fdf-ad25-b310128e9d54@manitou-mail.org
Whole thread Raw
In response to Re: Postgres 12: backend crashes when creating non-deterministiccollation  (Thomas Kellerer <spam_eater@gmx.net>)
Responses Re: Postgres 12: backend crashes when creating non-deterministiccollation
List pgsql-general
    Thomas Kellerer wrote:

> > To get a case insensitive collation you'd have to use something like
> >
> >      LOCALE = 'de-DE-u-ks-level2'
>
> Creating works, but apparently on Windows ICU does not support this.

After installing v12 on windows with the EDB installer, I notice
that it ships with ICU 53, a relatively old version (2014).

Concerning the problem just above (not the crash), ICU 53 is too old
to support BCP47 tags as collation attributes, as mentioned
at https://www.postgresql.org/docs/12/collation.html :

  "The first example selects the ICU locale using a “language tag” per
  BCP 47. The second example uses the traditional ICU-specific locale
  syntax. The first style is preferred going forward, but it is not
  supported by older ICU versions.

With ICU 53 or older, instead of the locale above, we must use the
old-style syntax:

 locale = 'de-DE@colStrength=secondary'

If you use that in your example, the case insensitive lookups should
work.

But it's unfortunate that the EDB build did not switch to a recent ICU
version for PostgreSQL 12.


Best regards,
--
Daniel Vérité
PostgreSQL-powered mailer: http://www.manitou-mail.org
Twitter: @DanielVerite



pgsql-general by date:

Previous
From: Peter Geoghegan
Date:
Subject: Re: Clarification on the release notes of postgresql 12 regarding pg_upgrade
Next
From: Moreno Andreo
Date:
Subject: Re: Pg11 -- MultiXactId xxxx has not been created yet -- apparentwraparound