
PostgreSQL 全球开发小组推迟了 PostgreSQL 19 的发布,PostgreSQL 19 是流行的开源数据库的最新版本,并且推迟了大量特性的发布。PostgreSQL 19 原定于 9 月底或 10 月初发布,现在预计将在 11 月 19 日左右正式发布。开发者还删除了 8 到 10 项重要特性。在解释回滚特性的数量时 — — 这些特性的推出现在被推迟到明年的发布版本 PostgreSQL 20 中 — — EDB 的副总裁 Peter Eisentraut 表示,原因可能至少部分归因于开发者使用的 LLM 代码审查。
The PostgreSQL Global Development Group has delayed the release of PostgreSQL 19, the latest iteration of the popular open source database, and held back an unusual number of features. Once slated for release in late September or early October, PostgreSQL 19 is now expected to be generally available around November 19. Developers have also dropped between eight and 10 significant features. Explaining the number of reverts — features whose rollouts have now been postponed to next year's release, PostgreSQL 20 — Peter Eisentraut, veep at EDB, a PostgreSQL support and consultancy, said the reason could be at least in part attributed to the LLM code reviews used by developers.
在一篇博客文章中,作为 PostgreSQL 主要提交者的 Eisentraut 表示,一些被回滚的特性存在重大架构缺陷,要“快速且在测试阶段修复”会很困难。然而,LLM 辅助代码审查的引入也发现了大量“涉及各种边界情况的相对无害的问题”,这些问题在过去,开发者可能要等到很久以后才会注意到,最可能是在发布后的五年内发布错误修复。
In a blog post, Eisentraut, who is a leading PostgreSQL committer, said some of the reverted features had significant architectural defects that would have been hard to fix "quickly and during beta." However, the introduction of LLM-assisted code review also uncovered a long tail of “relatively harmless issues involving various edge cases” which, in past times, developers might not have noticed until much later, most likely issuing bug fixes in the five years following launch.
Eisentraut 说:“借助 LLM 辅助代码审查,这类问题可以被更快地发现,然后你就会面对四十个缺陷报告的列表。即使每个问题平均只需要三行代码的修复,处理每个问题也会产生固定的开销,然后你就会没时间了。”我们被告知,在 PostgreSQL 19 的重大更新编写期间,LLM 辅助代码审查的作用还不如现在,但在发布前的几个月里,AI 支持的审查变得更被理解且更有效。
“With LLM-assisted code review, these kinds of things can get found much faster, and then you’re staring at a list of forty defect reports. Even if each of them requires only a three-line fix on average, there is a fixed overhead to dealing with each of these, and then you run out of time.”When the big updates for PostgreSQL 19 were written, LLM-assisted code review was not as useful as it is now, we're told, but in the months leading up to the launch, the AI-supported reviews became better understood and more effective.
“在特性编写和提交之后,有效的质量标准已经提高。除非 LLM 辅助代码审查的能力继续以当前速度提升,否则这种情况应该会在未来的开发周期中自行解决,”Eisentraut 说。
“The effective quality bar has been raised after the time the feature was written and committed. Unless the capabilities of LLM-assisted code review keep improving at the current rate, this situation should sort itself out for future development cycles,” Eisentraut said.
他还特别强调,这些回退并非源于开发中的“氛围编码”,因为当时大多数新功能编写时,这种技术尚未出现。PostgreSQL最初由迈克尔·斯通布雷克于1986年提出。1994年,安德鲁·尤和朱莉·陈用SQL取代了查询语言POSTQUEL;1995年,他们在更宽松的许可证下使数据库免费提供并可修改,并将其更名为PostgreSQL。此后,由于三大超大规模云服务商基于它构建的服务,以及众多线兼容分布式系统的可用性,它已成为专业开发者中最受欢迎的数据库。
He was also at pains to point out that the reverts were not down to “vibe coding” in development, as the technique was not available when most of the new features were written. Postgres was first proposed by Michael Stonebraker in 1986. In 1994, Andrew Yu and Jolly Chen replaced the query language POSTQUEL with SQL, and in 1995 made the database freely available and modifiable under a more permissive license, renaming it PostgreSQL. It has since become the most popular database among professional developers owing to the services the big three hyperscalers built on it as well as the range of wire-compatible distributed systems available.
从PostgreSQL 19版本中移除的功能之一是SQL属性图查询(SQL/PGQ)的支持,该功能于2023年成为SQL标准的一部分。该功能提供了用于探索由边连接的节点之间关系的语法。PostgreSQL的实现因未解决的问题被移除。当时,PostgreSQL贡献者汤姆·莱恩警告:“如今我愿意打赌晚餐,如果我们在v19中发布它,将会出现无法在v20之前修复的发布后错误。”
Among the features pulled from the PostgreSQL 19 iteration is support for SQL Property Graph Queries (SQL/PGQ), which became part of the SQL standard in 2023. The feature provides syntax for exploring relationships between nodes connected by edges. PostgreSQL's implementation was removed over unresolved issues. At the time, PostgreSQL contributor Tom Lane warned: "At this point I'd be willing to bet dinner that if we ship it in v19 there will be post-release bug discoveries that are unfixable until v20."
尽管有此延迟,艾森特劳特承诺PostgreSQL 19仍将是“一个出色的版本”,其中包括REPACK CONCURRENTLY,它避免了用于回收磁盘空间的表锁定VACUUM FULL操作。“而且在经过额外审查之后,它将非常稳健,”他说。从PostgreSQL 19中回退的功能很可能会进入PostgreSQL 20。就在几个月前,开发者们还预期PostgreSQL 20将没有新功能,仅修复错误。现在,它很可能会包含之前版本中留下的新功能,艾森特劳特说道。®
Despite the delay, Eisentraut promises PostgreSQL 19 will still be “a great release,” that includes REPACK CONCURRENTLY, which avoids the table-lock VACUUM FULL operation used to reclaim disk space. “And it will be very robust, after all the additional scrutiny,” he said. The features reverted from PostgreSQL 19 will likely make it into PostgreSQL 20. Just a few months ago, developers expected PostgreSQL 20 to have no new features, just bug fixes. Now, it is likely to have the new features left over from the earlier release, Eisentraut said.®