PostgreSQL 19 没有按原计划在 10 月 29 日面世:社区把正式发布挪到 11 月 19 日,并在 11 月 12 日额外插入一个 RC2 候选版本,官方理由是近期进入各维护分支的修复数量偏多,需要先交给社区验证一轮【1】。
只看这半句,这是一次标准的发布前质量把关。但把它和另一组数字放在一起,就不那么标准了:Beta 阶段开始后,大约 8~10 项重要功能被从 PostgreSQL 19 中撤回,其中部分是在相当靠后的阶段才被移除【2】。按 PostgreSQL 的惯例,一个大版本出现一项重要功能回滚算不上新闻,接近 10 项则明显越界【2】。
古令乐的判断是:这更像一次「质量门槛被工具抬升」的公开演练,而不是一次普通的发布事故。抬门槛的不是人,是大模型驱动的代码审查与模糊测试。

图:来源页面配图(已本地备份)。引用:【1】PostgreSQL 19 发不出来?AI“找茬”太快,人类修Bug的速度跟不上了 — https://www.infoq.cn/article/Q6mgHWCSqV6KeZzee3NT?utm_source=rss&utm_medium=article
一、先把时间线摆清楚:推迟二十来天,多塞一个候选版本
事件本身很短:原定 10 月 29 日的正式版移到 11 月 19 日,中间新增 11 月 12 日的 RC2【1】;同期约 8~10 项重要功能被撤回,部分功能在很靠后的阶段才被拿下【2】。
值得留意的是社区处理问题的方式:修复批量涌入时,他们的选择是加一个缓冲版本,让候选版本多跑一轮社区验证,而不是压缩测试窗口、让正式版去承担未知风险。这个取舍本身就有借鉴价值——发布流程里最贵的从来不是多一个 RC,而是上线后才发现的问题。
二、被撤回的不是「AI 写的烂代码」,而是老代码里的旧账
PostgreSQL 核心提交者、EDB 副总裁 Peter Eisentraut 专门撰文解释这次异常,并先否掉了一个很容易冒出来的猜测:这些功能大体不是 vibe coding 的产物,多数在被撤回之前很久就已完成,那时 LLM 辅助编程与代码审查尚未成熟【3】。因果顺序是反的——不是模型批量生成了劣质代码,而是后来变强的审查工具,回头重读了按传统流程写出来的老代码。
他估计,其中不少问题原本可能要在接下来的 5 年内逐渐浮现。【3】
问题分成两类:一类是架构层面的缺陷,Beta 阶段剩下的时间里难以彻底修好;另一类是长尾问题,单独看不严重、只在特定边缘条件下才会触发【3】。以往的路径是先发版,再等真实用户在未来几年撞上各种罕见组合,然后一点点打补丁。
AI 改变的正是这一段。开发者可能一次性面对约 40 份缺陷报告,即便每个问题平均只改 3 行代码,但复现、评审、回归、跨模块沟通这些固定成本一分都省不掉【4】。代码改几分钟,几十个问题叠加起来,资深工程师的时间很快被吃光。Peter 把这种现象称作「有效质量门槛被抬高了」:代码在提交时符合当时的标准,等要发布时,新工具已经能看出过去看不出的毛病【4】。
三、为什么数据库首当其冲:组合爆炸恰好是 LLM 的舒适区
数据库这类系统有个特点:用户期待功能可以自由组合。一个 SQL 层面的新能力,不仅要在最普通的情况下跑通,还要能嵌进 domain、复合类型、分区表、视图、security definer 函数、触发器等各种环境,而这些能力之间还能继续互相嵌套【5】。报道里给出的典型场景是:domain 套在复合类型上,复合类型里的字段本身又是 domain,domain 带非空约束,列被删掉又重新加回,分区 detach 之后按不同列顺序重新 attach,最后这一切出现在一个视图里,而这个视图又从触发器中的 security-definer 函数被调用【5】。
人类很难把组合枚举穷尽,更难逐个手工验证;而 LLM 辅助模糊测试擅长这类工作——不断生成边缘组合、构造输入、观察异常,再顺着异常路径继续扩展【5】。也正因如此,社区判断这类能力未来要直接嵌进功能开发阶段,而不是等 Beta 后期才集中补课【5】。
这不是只停留在设想。今年 8 月,社区成员 Robert Haas 曾让 Claude 依据 feature freeze 之后的修复数量与类型,对 PostgreSQL 19 的补丁做风险评估,SQL 属性图查询被列为高风险功能之一,当时已经历 17 次修复;核心开发者 Tom Lane 随后表示,如果该功能按当时状态进入 PostgreSQL 19,他甚至愿意「赌一顿晚饭」【5】。最终 SQL/PGQ 确实被撤回【5】。在这轮周期里,AI 已经不只是「聊天式代码评论员」,而是参与了真实开源项目的风险筛查。
四、别把延期全算在模型头上
需要说清楚的是,AI 不是唯一原因。报道提到,今年 4 月到 8 月社区密集处理安全问题,大量资深开发者被占用,Beta 前期本应进行的额外评审与测试因此打折;再叠加项目自身复杂度持续上涨,问题才集中堆到发布周期后段【5】。把延期简单归因于「AI 太能挑刺」,是另一种偷懒。
五、对中国团队意味着什么
第一,正在用 PostgreSQL 的企业不必改升级计划,但要改评估方式。 PostgreSQL 19 并不会因此变成小版本,仍将包含 REPACK CONCURRENTLY、序列的逻辑复制、以及通过 pg_plan_advice 实现的查询规划器提示等重要能力【6】。真正该变的是评估动作:以后看一个大版本,不能只读新增了什么,还要看「撤回了什么、为什么撤回」。撤回清单往往比功能列表更能说明这个版本的成熟度分布。
第二,自研团队一旦引入 AI 审查,会先撞上一段「缺陷报告洪水期」。 这并不等于团队变差了,而是可见度变了:藏在边缘条件里的问题一直存在,只是以前没人有带宽去数。发现成本被打下来之后,瓶颈会立刻从「发现」转移到「处理」。要提前准备的是处理带宽,而不是恐慌。
第三,做 AI 编程工具或 AI for Systems 的团队,机会在于把验证左移。 把模糊测试与组合测试嵌进功能开发阶段,而非发布前集中跑一遍,是可以产品化的能力。PostgreSQL 社区用一次延期,为这个方向做了相当有说服力的背书。
第四,采购视角要换指标。 评估 AI 代码审查工具时,「能报出多少问题」几乎没意义,「人工确认为真问题的比例」和「单条问题从发现到闭环的成本」才有意义。前者决定信噪比,后者决定你请进来的是助手还是负担。
六、下一步:五件可以本周就做的事
- 按「问题数 × 单件固定成本」做容量规划。 平均改 3 行不等于 3 分钟,评审、复现、回归、跨团队同步都是固定开销,用人力和排期估算时按问题条数乘单件成本,比按代码行数靠谱。
- AI 审查先灰度再全量。 挑一到两个模块先跑一个迭代,统计「报告总数 / 确认为真问题的比例」,再决定是否扩大范围,否则第一批报告就会把资深工程师的时间吃干净。
- 给缺陷分双通道。 架构级缺陷走设计评审,边缘条件缺陷走快速修复通道;全部挤在一个队列里,是最容易拖慢发布节奏的做法。
- 把组合场景清单化。 把你们产品里最痛的嵌套组合(权限、多租户、分库、触发器与视图叠加)整理成可复用的模糊测试种子。枚举是机器更擅长的事,但「该枚举哪些」仍然得由人定义。
- 升级评估文档加一节「上游撤回清单」。 特别是计划跟进 PostgreSQL 19 及后续版本、或用基于 PG 的云托管与发行版的团队,把撤回功能的替代方案与影响面写清楚,比上线后才发现某个语法行为变了要便宜得多。
AI 抬高有效质量门槛,短期会拖慢发布,长期会降低运维与救火的成本。对中国团队来说,这笔交换通常是划算的——前提是你提前准备了接住这批缺陷报告的容器,而不是等洪水来了再找桶。
参考文献
【1】PostgreSQL 19 发不出来?AI“找茬”太快,人类修Bug的速度跟不上了 — https://www.infoq.cn/article/Q6mgHWCSqV6KeZzee3NT?utm_source=rss&utm_medium=article 【1】PostgreSQL 19 发不出来?AI「找茬」太快,人类修 Bug 的速度跟不上了(正式发布推迟至 11 月 19 日、新增 11 月 12 日 RC2、官方给出的推迟理由) — https://www.infoq.cn/article/Q6mgHWCSqV6KeZzee3NT
【2】同上文(Beta 阶段约 8~10 项重要功能被撤回,部分在较后阶段移除,超出项目惯例) — https://www.infoq.cn/article/Q6mgHWCSqV6KeZzee3NT
【3】同上文(Peter Eisentraut 否定 vibe coding 猜测、五年量级缺陷被压缩发现、架构级与长尾问题两类划分) — https://www.infoq.cn/article/Q6mgHWCSqV6KeZzee3NT
【4】同上文(约 40 份缺陷报告、平均 3 行代码改动与固定处理成本、「有效质量门槛被抬高」的表述) — https://www.infoq.cn/article/Q6mgHWCSqV6KeZzee3NT
【5】同上文(PostgreSQL 功能组合与嵌套场景、LLM 辅助模糊测试的适用性与左移判断、Robert Haas 与 Tom Lane 对 SQL/PGQ 的风险评估、4 月至 8 月安全问题处理占用资深开发者) — https://www.infoq.cn/article/Q6mgHWCSqV6KeZzee3NT
【6】同上文(PostgreSQL 19 仍将包含 REPACK CONCURRENTLY、序列的逻辑复制、pg_plan_advice 查询规划器提示等能力) — https://www.infoq.cn/article/Q6mgHWCSqV6KeZzee3NT
编辑注:本文基于上述来源的二次解读,其中判断、场景假设与落地建议为古令乐编辑团队观点,不代表原报道立场。



