Simplify pg_collation.collversion for Windows libc

From: "Daniel Verite" <daniel(at)manitou-mail(dot)org>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Simplify pg_collation.collversion for Windows libc
Date: 2023-06-05 16:55:56
Message-ID: 40371128-91d0-4bed-bdb4-19ceeec918af@manitou-mail.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

Currently the libc collation version for Windows has two components
coming from the NLSVERSIONINFOEX structure [1]
dwNLSVersion and dwDefinedVersion

So we get version numbers looking like this (with 16 beta1):

postgres=# select collversion,count(*) from pg_collation group by
collversion;
collversion | count
---------------+-------
| 5
1539.5,1539.5 | 1457
(2 rows)

According to [1] the second number is obsolete, and AFAICS we should
expose only the first.

<quote>
dwDefinedVersion

Defined version. This value is used to track changes in the repertoire
of Unicode code points. The value increments when the Unicode
repertoire is extended, for example, if more characters are defined.

Starting with Windows 8: Deprecated. Use dwNLSVersion instead.
</quote>

PFA a patch implementing that suggestion.

[1]
https://learn.microsoft.com/en-us/windows/win32/api/winnls/ns-winnls-nlsversioninfoex

Best regards,
--
Daniel Vérité
https://postgresql.verite.pro/
Twitter: @DanielVerite

Attachment Content-Type Size
windows-collversion.patch text/plain 672 bytes

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Jonathan S. Katz 2023-06-05 17:04:21 Re: Docs: Encourage strong server verification with SCRAM
Previous Message Bruce Momjian 2023-06-05 16:42:06 Re: Let's make PostgreSQL multi-threaded