内容提要
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。