Identifier downcase change for LATIN1, in v19

From: Noah Misch <noah(at)leadboat(dot)com>
To: pgsql(at)j-davis(dot)com
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Identifier downcase change for LATIN1, in v19
Date: 2026-08-26 22:55:10
Message-ID: 20260826225510.10.noahmisch@microsoft.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Opus 5 found that, under LATIN1, psql running "\d TABLENAME" can find a
different table than the one "SELECT * FROM TABLENAME" reads. Commit 87b2968
"downcase_identifier(): use method table from locale provider" changed this.
While the LLM likes the new backend behavior and argues for making the
frontend match it, I disagree. Identifier downcasing behavior is, in a loose
sense, part of the frontend-backend protocol. I doubt more locale-aware
identifier downcasing could be worth the compatibility break. The backend
should return to v18 identifier downcase behavior.

If new downcase behavior were worthwhile, the change would need to be clearly
release-noted, so other clients with psql-like logic can cope. It would also
entail making psql understand both generations of downcasing behavior, so psql
can do the right downcasing for older server versions it supports.

I'm attaching the LLM's test+report.

Attachment Content-Type Size
87b2968-downcase-test-v0.patch text/plain 32.8 KB

Browse pgsql-hackers by date

  From Date Subject
Next Message Zsolt Parragi 2026-08-26 23:21:34 Re: tablecmds: fix bug where index rebuild loses replica identity on partitions
Previous Message Zsolt Parragi 2026-08-26 22:30:52 Re: SLOPE - Planner optimizations on monotonic expressions.