Postgres 用 Rust 重写,100% 通过回归测试

Postgres rewritten in Rust, now passing 100% of the Postgres regression tests

Postgres 用 Rust 重写,100% 通过回归测试

一个名为 pgrust 的项目正在用 Rust 语言重写 Postgres,目前已实现与 Postgres 18.3 的磁盘兼容,并成功通过了超过 46,000 个回归测试用例。该项目旨在利用 Rust 的安全性和 AI 辅助编程,让 Postgres 的内部架构更容易被修改和扩展。虽然目前尚未达到生产环境标准,且部分扩展如 PL/Python 尚不兼容,但其路线图已规划了多线程内核、内置连接池及无 vacuum 存储等创新特性。开发者可通过 WebAssembly 演示或 Docker 快速体验这一全新的数据库实现。

目标是让 Postgres 从内部更容易被修改:保持 Postgres 的行为特征,以真实的 Postgres 测试作为验证标准,并利用 Rust 加上 AI 辅助编程来探索更深层的服务器变更。
  • 亲历者透露,该项目先利用 c2rust 将 C 代码翻译为 unsafe Rust,再逐步重构为 safe Rust,而非完全由 AI 生成。
  • 有评论者尖锐指出,此类项目极大概率在 6 个月内被归档,沦为低效的 Token 浪费或单纯的学术练习,无法投入生产。
  • 针对 Rust 重写 Postgres 的必要性,反对者认为 C 语言的内存安全问题已有成熟工具链解决,并非必须通过语言转换来规避。
  • 关于法律风险,有人澄清在保留原 BSD 许可代码的基础上叠加 AGPL 许可,并不能消除原许可证的约束或规避版权责任。
  • 部分观点质疑 LLM 生成的代码缺乏清晰的架构演进能力,难以像传统开发那样进行长期的迭代优化和系统维护。

同日更多故事

2026-07-09