Re: Use CASEFOLD() internally rather than LOWER()
Daniel Verite <daniel@manitou-mail.org>
From: "Daniel Verite" <daniel@manitou-mail.org>
To: "Jeff Davis" <pgsql@j-davis.com>
Cc: pgsql-hackers@postgresql.org
Date: 2026-02-28T13:27:12Z
Lists: pgsql-hackers
Jeff Davis wrote: > There are a number of internal callers of LOWER(), and conceptually > those should all be using CASEFOLD(). Patches attached. I tried 0001 with a non-UTF8 database and got quickly stuck: create database latin9 encoding='LATIN9' template=template0 locale='fr_FR.ISO-8859-15@euro'; \c latin9 select 'abc' ilike 'bc'; ERROR: Unicode case folding can only be performed if server encoding is UTF8 Presumably the internal calls to casefold should be conditionalized on the encoding being UTF-8? Best regards, -- Daniel Vérité https://postgresql.verite.pro/