Re: insensitive collations

Andreas Karlsson <andreas@proxel.se>

From: Andreas Karlsson <andreas@proxel.se>
To: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2019-01-09T18:49:37Z
Lists: pgsql-hackers
On 12/28/18 9:55 AM, Peter Eisentraut wrote:
> Here is an updated patch.
> 
> I have updated the naming to "deterministic", as discussed.

Maybe this is orthogonal and best handled elsewhere but have you when 
working with string equality given unicode normalization forms[1] any 
thought? I feel there are three sane ways to do unicode string equality:

1) Binary equality
2) Binary equality after normalizing the unicode
3) Collation equality

Would there be any point in adding unicode normalization support into 
the collation system or is this best handle for example with a function 
run on INSERT or with something else entirely?

Right now PosgreSQL does not have any support for normalization forms as 
far as I know.

1. http://unicode.org/reports/tr15/

Andreas


Commits

  1. Collations with nondeterministic comparison

  2. Add support for collation attributes on older ICU versions

  3. Make type "name" collation-aware.

  4. Make collation-aware system catalog columns use "C" collation.

  5. Adjust string comparison so that only bitwise-equal strings are considered