Shaun Thomas:展望 Postgres 19:后记

Shaun Thomas:展望 Postgres 19:后记

💡 原文英文,约2900词,阅读约需11分钟。
📝

内容提要

Postgres 19开发中,AI辅助审查发现大量潜在缺陷,导致GROUP BY ALL、SQL/PGQ属性图、分区合并拆分、外键批处理等多个已冻结特性被回退。提交量激增62%,提交者不堪重负,发布延期,Beta 4后RC与正式版仍未确定。社区坚持正确性优先,宁可回退也不发布有缺陷版本。

🔎

延伸解读

AI审查如何改变Postgres开发节奏

文章指出,AI辅助审查让贡献者能提交更多补丁,并对每个补丁进行更彻底的自动化检查。这导致在Postgres 19周期中,大量已冻结特性因潜在缺陷被回退。提交量激增62%,但提交率下降,撤回数翻倍。这种“大教堂与集市”遇上自动化审查的模式,虽然提前暴露了问题,但也让一些过去可能存活到发布后的补丁被移除。

回退决策背后的正确性优先原则

多个特性如GROUP BY ALL、SQL/PGQ属性图、分区合并拆分等被回退,原因包括设计缺陷、安全问题和补丁不成熟。社区宁愿推迟发布或移除功能,也不愿发布有缺陷的版本。例如,GROUP BY ALL因边缘情况导致错误结果被回退;SQL/PGQ因不变式仅在创建时强制而被移除。这体现了Postgres社区对正确性和稳定性的高度重视。

提交者负担与发布延期的影响

文章提到提交者不堪重负,审查带宽不足。RI外键批处理补丁因缺乏审查而仓促提交,随后发现严重缺陷被回退。发布日程显示,Beta 4后RC和正式版仍未确定,而Postgres 18仅三个Beta就进入RC。这种延期可能成为新常态,但社区仍在权衡是否推迟发布以保持质量。

对Postgres 20的展望与不确定性

作者对Postgres 20持谨慎乐观态度,因为当前补丁从一开始就受到严格审查,而非事后补救。然而,AI能力的进一步提升可能再次导致大量补丁被回退。提交者过载问题没有长期解决方案。Postgres 19目前处于不确定状态,但社区对质量的坚持不会改变。

Q&A

Postgres 19 为什么回退了多个已冻结的特性?

AI 辅助审查发现了大量潜在缺陷,导致多个已冻结特性因存在严重问题而被回退。

哪些 Postgres 19 特性被回退了?

被回退的特性包括:GROUP BY ALL、SQL/PGQ 属性图、ALTER TABLE MERGE/SPLIT PARTITION、外键批处理、pg_get_role_ddl() 等 DDL 函数、非文本输出格式的 pg_dumpall。

AI 在 Postgres 19 开发中起到了什么作用?

AI 辅助审查发现了大量潜在缺陷,导致多个已冻结特性被回退。

Postgres 19 的发布为什么延期?

由于大量补丁被回退,提交量激增 62%,提交者不堪重负,导致发布延期,Beta 4 后 RC 与正式版仍未确定。

社区对回退这些特性持什么态度?

社区坚持正确性优先,宁可回退也不发布有缺陷的版本。

Postgres 19 的当前发布状态如何?

已发布 Beta 1 至 Beta 3,Beta 4 计划于 9 月 24 日发布,RC 1 和正式版(GA)仍为 TBD。

🏷️

标签

➡️

继续阅读