Re: Collation versions on Windows (help wanted, apply within) - Mailing list pgsql-hackers

From Thomas Munro
Subject Re: Collation versions on Windows (help wanted, apply within)
Date
Msg-id CA+hUKGL5-=cvST28MRxaY5=33X1OWLYyYzisXtT9gTRsmVHWEg@mail.gmail.com
Whole thread Raw
In response to Re: Collation versions on Windows (help wanted, apply within)  (Juan José Santamaría Flecha <juanjo.santamaria@gmail.com>)
List pgsql-hackers
On Sat, Nov 9, 2019 at 10:20 AM Juan José Santamaría Flecha
<juanjo.santamaria@gmail.com> wrote:
>> Do any Windows hackers want to help get it into shape?  Some things to
>> do: test it, verify that the _WIN32_WINNT >= 0x0600 stuff makes sense
>> (why do we target such ancient Windows releases anyway?)
>
> You have to keep in mind that  _WIN32_WINNT also applies to MinGW, so any build with those tools will use a value of
0x0501and this code will be ifdef'd out. 
>
> As from where this value comes, my take is that it has not been revised in a long time [1]. Windows 7 , Server 2008
and2008 R2 support will end next year [2] [3], maybe you can make a case for updating this value. 

Ah, I see, thanks.  I think what I have is OK for now then.  If
someone else who is closer to the matter wants to argue that we should
always target Vista+ (for example on MinGW) in order to access this
functionality, I'll let them do that separately.

>> see if there is way we could use GetNLSVersion() (no "Ex") to make this work on
>> older Windows system
>
> Older systems is just Windows Server 2003, not sure if it is worth any effort.

Cool.  Nothing to do here then.

>  16387 | en_us     |          2200 |        10 | c            | t                   |           24 | en-US       |
en-US    | 6020f,6020f 

Thanks for testing!

On Sat, Nov 9, 2019 at 11:04 PM Juan José Santamaría Flecha
<juanjo.santamaria@gmail.com> wrote:
> There is a major and a minor version. The attached patch applies on top the previous.

Perfect.  I've merged this into the patch.

It's interesting that minor version changes mean no order changed but
new code points were added; that must be useful if your system
prevents you from using code points before you add them, I guess (?).
I don't understand the difference between the NLS and "defined"
versions, but at this stage I don't think we can try to be too fancy
here, think we're just going to have to assume we need both of them
and treat this the same way across all providers: if it moves, reindex
it.

Attachment

pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: Ordering of header file inclusion
Next
From: Amit Kapila
Date:
Subject: Re: dropdb --force