PostgreSQL 19 Beta 4 发布:特性大砍

PostgreSQL 19 Beta 4 发布:特性大砍

💡 原文中文,约3100字,阅读约需8分钟。
📝

内容提要

PostgreSQL 19 Beta 4 发布,因语义与并发问题撤回了 SQL/PGQ、时态更新删除、分区合并拆分、DDL 重建函数、在线校验和五项功能,作者支持此举以确保可靠性。REPACK、WAIT FOR LSN、postgres_fdw 导入统计等功能仍保留。简体中文翻译已合入上游,pgsql.cc 补齐了 28 年手册。

🔎

延伸解读

撤回背后的共同逻辑

五个功能被撤并非孤立事件,它们都撞上了同一堵墙:新功能必须融入数据库原有的约束、并发和恢复规则。SQL/PGQ 建图后主键可被删除,时态更新在并发下返回 UPDATE 0,分区合并会改变生成列值,这些都不是边角问题,而是语义根基未稳。发布管理团队选择撤回,是为了避免用户围绕有问题的行为构建应用,日后付出更大的兼容代价。

被撤功能并非永久出局

文章提醒,撤回不等于判死刑。时态主键(WITHOUT OVERLAPS)曾在 PG 17 被撤,PG 18 又回来了,只是晚一年。但反过来也不能把撤回的功能直接写进 PG 20 路线图,因为是否回归取决于语义共识和实现质量。对计划升级的用户来说,Beta 里出现过的功能不等于正式版会有,最终以发布说明为准。

PG 19 仍保留的实用能力

尽管砍掉五个大功能,DBA 最期盼的几项仍在:REPACK 和 REPACK CONCURRENTLY 保留,但并发执行期间仍有强锁阶段,不宜宣传为全程无锁;WAIT FOR LSN 可用于备库读己之写,但需遵守事务和快照要求;postgres_fdw 导入远端统计信息保留,选项从 restore_stats 改名为 import_stats。此外逻辑复制同步序列值、按需逻辑解码、pg_plan_advice 等也还在。

中文文档与本地化进展

文章提到,PostgreSQL 简体中文本地化消息翻译已合入上游,随 Beta 4 发布,系统语言为 zh_CN 时错误和提示信息将显示中文。目前仅 PG 19 简体中文进入,繁体中文和 PG 14 到 18 的回补预计在正式版加入。pgsql.cc 还补齐了 6.3 到 13 共 24 个已停止维护版本的历史手册,在线版和 PDF 均可查阅,为知识图谱项目提供中文底本。

❓

Q&A

PostgreSQL 19 Beta 4 撤回了哪些功能?

撤回了五个功能:SQL/PGQ、时态更新删除、分区合并拆分、DDL 重建函数、在线校验和。另外还回退了 CREATE SCHEMA 的两项扩展,以及在 postmaster 进程里强制把 LC_COLLATE 设成 C 的改动。

为什么 PostgreSQL 19 Beta 4 要撤回这些功能?

这些功能都撞上了同一个问题:新功能光自己能跑通不算数,它得接进数据库原有的整套规则里,而且对象被修改、事务并发、数据要恢复的时候,这些规则还得照样成立。具体来说,SQL/PGQ 存在约束校验后失效的问题;时态更新删除在并发修改同一合同不同时段时行为语义未达成共识;分区合并拆分会导致生成列值变化和逻辑解码异常;DDL 重建函数相当于在服务端另写一套 pg_dump,维护成本高;在线校验和自身状态存疑,社区不放心。

PostgreSQL 19 Beta 4 还保留了哪些重要功能?

保留了 REPACK 和 REPACK CONCURRENTLY、WAIT FOR LSN、postgres_fdw 导入远端统计信息(选项从 restore_stats 改名为 import_stats)。此外还有逻辑复制同步序列值、wal_level = replica 时按需启用逻辑解码、查询计划建议(pg_plan_advice)、autovacuum 评分机制,以及 COPY FROM 的 SIMD 优化。

PostgreSQL 19 Beta 4 的发布时间和后续计划是什么?

Beta 4 于 2026 年 9 月 24 日发布。按计划,10 月上旬出 RC,顺利的话 10 月正式发布。

PostgreSQL 19 的简体中文翻译进展如何?

2026 年 9 月 23 日,冯若航提交的 PostgreSQL 简体中文本地化消息翻译合进了上游,随 Beta 4 一起发布。现在安装 PostgreSQL 19,系统语言是 zh_CN 的话,报错和提示信息就是中文版。目前只有 PG 19 的简体中文,繁体中文 zh_TW 和 PG 14 到 18 的回补也已做好,预计在正式版本中进来。

pgsql.cc 最近有什么更新?

pgsql.cc 是 postgresql.org 官网的全站中文翻译。之前收录了 PG 10 到 19(外加 devel)的完整中文手册。这次除了同步 Beta 4 的文档改动,还专门给 6.3 到 13 这 24 个已停止维护的版本做了历史手册归档,在线版和 PDF 都有。从 6.3 到 19,三十个大版本、横跨 28 年的 PostgreSQL 手册,现在都能在 pgsql.cc 上用中文读到。

🏷️

标签

➡️

继续阅读