010_database.pl fails on openbsd w/ LC_ALL=LANG=C

From: Andres Freund <andres(at)anarazel(dot)de>
To: pgsql-hackers(at)postgresql(dot)org, Jeff Davis <pgsql(at)j-davis(dot)com>
Subject: 010_database.pl fails on openbsd w/ LC_ALL=LANG=C
Date: 2023-07-02 16:56:15
Message-ID: 20230702165615.k6waysygrefdeiiw@awork3.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

I was rebasing my meson tree, which has more OSs added to CI, and noticed that
010_database.pl started failing on openbsd recently-ish, without the CI
environment for that having changed.

The tests passed on openbsd when my tree was based on 47b7051bc82
(2023-06-01), but failed after rebasing onto a798660ebe3 (2023-06-29).

Example of a failing run:
https://cirrus-ci.com/task/6391476419035136?logs=test_world#L273
https://api.cirrus-ci.com/v1/artifact/task/6391476419035136/testrun/build/testrun/icu/010_database/log/regress_log_010_database
https://api.cirrus-ci.com/v1/artifact/task/6391476419035136/testrun/build/testrun/icu/010_database/log/010_database_node1.log

[07:25:06.421](0.161s) not ok 6 - ICU-specific locale must be specified with ICU_LOCALE: exit code not 0
[07:25:06.423](0.002s) # Failed test 'ICU-specific locale must be specified with ICU_LOCALE: exit code not 0'
# at /home/postgres/postgres/src/test/icu/t/010_database.pl line 78.
[07:25:06.423](0.000s) # got: '0'
# expected: anything else
[07:25:06.424](0.001s) not ok 7 - ICU-specific locale must be specified with ICU_LOCALE: error message
[07:25:06.424](0.001s) # Failed test 'ICU-specific locale must be specified with ICU_LOCALE: error message'
# at /home/postgres/postgres/src/test/icu/t/010_database.pl line 80.
[07:25:06.424](0.000s) # 'psql:<stdin>:2: NOTICE: using standard form "und-u-ks-level1" for ICU locale "@colStrength=primary"'
# doesn't match '(?^:ERROR: invalid LC_COLLATE locale name)'
[07:25:06.425](0.000s) 1..7

The server log says:

2023-07-02 07:25:05.946 UTC [15605][client backend] [010_database.pl][3/14:0] LOG: statement: CREATE DATABASE dbicu1 LOCALE_PROVIDER icu LOCALE 'C' TEMPLATE template0 ENCODING UTF8
2023-07-02 07:25:05.947 UTC [15605][client backend] [010_database.pl][3/14:0] WARNING: could not convert locale name "C" to language tag: U_ILLEGAL_ARGUMENT_ERROR
2023-07-02 07:25:05.948 UTC [15605][client backend] [010_database.pl][3/14:0] WARNING: ICU locale "C" has unknown language "c"
2023-07-02 07:25:05.948 UTC [15605][client backend] [010_database.pl][3/14:0] HINT: To disable ICU locale validation, set parameter icu_validation_level to DISABLED.

Example of a succeeding run:
https://cirrus-ci.com/task/5893925412536320?logs=test_world#L261

I have not yet debugged this further.

Greetings,

Andres Freund

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2023-07-02 17:41:07 Replacing abort() with __builtin_trap()?
Previous Message Tomas Vondra 2023-07-02 16:09:12 Re: BRIN indexes vs. SK_SEARCHARRAY (and preprocessing scan keys)