]> git.ipfire.org Git - thirdparty/postgresql.git/commit
createdb: compare strategy case-insensitive
authorTomas Vondra <tomas.vondra@postgresql.org>
Sun, 21 Apr 2024 19:21:55 +0000 (21:21 +0200)
committerTomas Vondra <tomas.vondra@postgresql.org>
Sun, 21 Apr 2024 19:21:55 +0000 (21:21 +0200)
commit9e6faeb3249d420a22ad8a5fbcf093b272c02cb8
tree0dad7726871c9aa04283cdf260c056e68f324104
parent75929b6cfaff143c28b3ba6bb8801dc67aab4a9b
createdb: compare strategy case-insensitive

When specifying the createdb strategy, the documentation suggests valid
options are FILE_COPY and WAL_LOG, but the code does case-sensitive
comparison and accepts only "file_copy" and "wal_log" as valid.

Fixed by doing a case-insensitive comparison using pg_strcasecmp(), same
as for other string parameters nearby.

While at it, apply fmtId() to a nearby "locale_provider". This already
did the comparison in case-insensitive way, but the value would not be
double-quoted, confusing the parser and the error message.

Backpatch to 15, where the strategy was introduced.

Backpatch-through: 15
Reviewed-by: Tom Lane
Discussion: https://postgr.es/m/90c6913a-1dd2-42b4-8365-ce3b09c39b17@enterprisedb.com
src/backend/commands/dbcommands.c
src/bin/scripts/createdb.c
src/bin/scripts/t/020_createdb.pl