Joshua Drake:PostgreSQL 19:2026年9月8日 - 9月16日

Joshua Drake:PostgreSQL 19:2026年9月8日 - 9月16日

💡 原文英文,约500词,阅读约需2分钟。
📝

内容提要

PostgreSQL 19 分支在九天内合入 71 个提交,其中 6 次回滚涉及 74 个提交,回滚原因多为兼容性或稳定性风险,包括外键检查批处理、UPDATE/DELETE FOR PORTION OF、在线校验和切换、DDL 重建函数及标识符大小写折叠等。校验和回滚仅限 19 分支,主分支继续开发。71 个提交中有 15 个涉及 REPACK。

🔎

延伸解读

回滚潮:兼容性与稳定性优先

九天内71个提交合入19分支,但6次回滚涉及74个提交,回滚原因多为兼容性或稳定性风险。例如,外键检查批处理被移除,UPDATE/DELETE FOR PORTION OF和在线校验和切换被整体回滚,DDL重建函数和标识符大小写折叠也因兼容性问题被撤销。这显示在发布前,社区对可能影响现有行为的改动持谨慎态度,宁可回滚也不冒险发布。

校验和回滚仅限19分支,主分支继续开发

在线数据校验和切换的回滚仅发生在REL_19_STABLE分支,主分支上该功能保持不变并继续开发,9月14日还有5个相关提交。回滚说明提到,测试期间已发现多个后期修复,担心正式发布后出现更多问题,因此选择在19分支完全回滚。这意味着该功能仍计划在版本20中推出,但19版本的用户将无法使用。

REPACK成为本窗口最大开发焦点

71个提交中有15个涉及REPACK和REPACK CONCURRENTLY,是19分支上最大的跟踪领域。其中5个提交收紧了命令的接受条件:限制为堆访问方法、拒绝用户目录表、无效索引失败、!indisready索引失败,以及当副本标识索引被删除时不允许操作。这些限制旨在提高命令的安全性和可靠性,避免误用导致数据问题。

Q&A

PostgreSQL 19 分支在 2026 年 9 月 8 日至 16 日期间有多少个提交?

71 个提交。

PostgreSQL 19 分支在九天内发生了多少次回滚?涉及多少个提交?

6 次回滚,涉及 74 个提交。

为什么 PostgreSQL 19 回滚了在线数据校验和切换功能?

因为该功能在测试期间出现了多个提交后修复,担心正式发布后可能暴露更多问题,为避免发布有缺陷的代码而回滚。

PostgreSQL 19 中 REPACK 相关的提交有多少?主要限制是什么?

有 15 个提交涉及 REPACK 和 REPACK CONCURRENTLY。主要限制包括:仅限堆访问方法、拒绝用户目录表、无效索引失败、!indisready 索引失败、副本标识索引被删除时不允许。

在线数据校验和切换功能在 PostgreSQL 20 中还会继续开发吗?

是的,该功能在主分支上保持不变并仍在积极开发中,9 月 14 日有 5 个提交,仍针对版本 20。

PostgreSQL 19 回滚了哪些与 CREATE SCHEMA 相关的更改?原因是什么?

Tom Lane 在 9 月 11 日回滚了两个 CREATE SCHEMA 更改,原因是兼容性破坏超过了功能收益。

🏷️

标签

➡️

继续阅读