发布于 2026-09-10T10:59:38.529693Z · Shaun Thomas · pgEdge 博客

glibc 2.28 在 2018 年按 Unicode 规则改了排序,B-tree 索引里按旧顺序摆好的数据就此对不上:查询少返回行、唯一约束抓不到重复,而且没有告警。Shaun Thomas 梳理了应对之道:PostgreSQL 13 起记录排序规则版本并告警,17 提供内置 provider,pg_c_utf8 在大版本内不再变。老集群升级操作系统后要 REINDEX INDEX CONCURRENTLY。
glibc 2.28 在 2018 年按 Unicode 规则改了排序,B-tree 索引里按旧顺序摆好的数据就此对不上:查询少返回行、唯一约束抓不到重复,而且没有告警。Shaun Thomas 梳理了应对之道:PostgreSQL 13 起记录排序规则版本并告警,17 提供内置 provider,pg_c_utf8 在大版本内不再变。老集群升级操作系统后要 REINDEX INDEX CONCURRENTLY。
来源记录
- center.info_item · d498eea6a104eae7 · 2026-10-03T04:08:35.169032Z
- pgweb.info_item · d498eea6a104eae7 · 2026-10-03T04:08:55.967155Z