Skip citext_utf8 test on Windows.

Back-patch of commit cff4e5a3 to 15 and 16, per request from Oleg
Tselebrovskiy.  Original commit message:

On other Windows build farm animals it is already skipped because they
don't use UTF-8 encoding.  On "hamerkop", UTF-8 is used, and then the
test fails.

It is not clear to me (a non-Windows person looking only at buildfarm
evidence) whether Windows is less sophisticated than other OSes and
doesn't know how to downcase Turkish İ with the standard Unicode
database, or if it is more sophisticated than other systems and uses
locale-specific behavior like ICU does.

Whichever the reason, the result is the same: we need to skip the test
on Windows, just as we already do for ICU, at least until a
Windows-savvy developer comes up with a better idea.  The technique for
detecting the OS is borrowed from collate.windows.win1252.sql.

This was anticipated by commit c2e8bd27, but the problem only surfaced
when Windows build farm animals started using Meson.

Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://postgr.es/m/CA%2BhUKGJ1LeC3aE2qQYTK95rFVON3ZVoTQpTKJqxkHdtEyawH4A%40mail.gmail.com
This commit is contained in:
Thomas Munro 2024-05-13 07:55:20 +12:00
parent d7bc9c9d04
commit e52a44b8a4
3 changed files with 3 additions and 0 deletions

View File

@ -3,6 +3,7 @@
* and a Unicode-aware locale.
*/
SELECT getdatabaseencoding() <> 'UTF8' OR
version() ~ '(Visual C\+\+|mingw32|windows)' OR
current_setting('lc_ctype') = 'C'
AS skip_test \gset
\if :skip_test

View File

@ -3,6 +3,7 @@
* and a Unicode-aware locale.
*/
SELECT getdatabaseencoding() <> 'UTF8' OR
version() ~ '(Visual C\+\+|mingw32|windows)' OR
current_setting('lc_ctype') = 'C'
AS skip_test \gset
\if :skip_test

View File

@ -4,6 +4,7 @@
*/
SELECT getdatabaseencoding() <> 'UTF8' OR
version() ~ '(Visual C\+\+|mingw32|windows)' OR
current_setting('lc_ctype') = 'C'
AS skip_test \gset
\if :skip_test