A new project called pgrust has rewritten Postgres in Rust, achieving compatibility with Postgres 18.3 and passing over 46,000 regression tests. This initiative aims to facilitate internal changes to Postgres while maintaining its established behavior, though it is not yet ready for production use.
pgrust is a complete rewrite of the Postgres database in Rust. It is designed to match the expected outputs of Postgres version 18.3, successfully passing all 46,000 regression tests. With disk compatibility, it can boot from existing Postgres 18.3 data directories.
The primary goal of pgrust is to simplify internal changes to Postgres while preserving its behavior. Features include multithreaded internals, built-in connection pooling, and improved support for JSON workloads. Additional experiments are ongoing to explore storage methodologies, including designs that eliminate the need for vacuuming.
As of now, pgrust is not production-ready, lacking performance optimization and full compatibility with existing Postgres extensions. While certain contrib modules have been ported, many procedural language extensions like PL/Python and PL/Perl do not yet work.
Users can access a WebAssembly demo at pgrust.com. Installation instructions are available for various operating systems including Docker, macOS, and Debian/Ubuntu, with specific commands provided for running and building the software.
β¨ This summary was generated by AI from the outlets' reporting listed below. It is not independently verified and may contain errors β check the original sources. How BrevFeed works β
A new project called pgrust has rewritten Postgres in Rust, achieving compatibility with Postgres 18.3 and passing over 46,000 regression tests. This initiative aims to facilitate internal changes to Postgres while maintaining its established behavior, though it is not yet ready for production use.