Re: Inconsistent results with libc sorting on Windows - Mailing list pgsql-hackers

From Juan José Santamaría Flecha
Subject Re: Inconsistent results with libc sorting on Windows
Date
Msg-id CAC+AXB1_6KOxMHGBqiD5Lt9OvYSbWcfHjOW9bmfdaz-Hvyp2VA@mail.gmail.com
Whole thread Raw
In response to Re: Inconsistent results with libc sorting on Windows  (Noah Misch <noah@leadboat.com>)
Responses Re: Inconsistent results with libc sorting on Windows
List pgsql-hackers

On Fri, Aug 11, 2023 at 7:29 AM Noah Misch <noah@leadboat.com> wrote:

The LCMapStringEx() solution is elegant.  I do see
https://learn.microsoft.com/en-us/windows/win32/intl/handling-sorting-in-your-applications
says, "If an application calls the function to create a sort key for a string
containing an Arabic kashida, the function creates no sort key value."  That's
aggravating.

I think the problem there is that it is just poorly explained.
Take for example the attached program that compares "normal" and "kashida" 'Raħīm' taken from [1], you'll get:

c1 = c2
c2 = c1

meaning that "normal" and "kashida" are the same string. So, probably that phrase should read something like: "If an application calls the function to create a sort key for a string containing an Arabic kashida character, the function will ignore that character and no sort key value will be generated for it."


Regards,

Juan José Santamaría Flecha
Attachment

pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: Adding a LogicalRepWorker type field
Next
From: Peter Smith
Date:
Subject: Re: Adding a LogicalRepWorker type field