TL;DR

A new version of Postgres rewritten entirely in Rust has successfully passed all of its regression tests. This development could influence future database architecture and performance. Details are still emerging about the timeline and broader implications.

The Postgres database system has been fully rewritten in Rust and now successfully passes 100% of its regression tests, according to the developers involved. This achievement signals a potential shift in how open-source databases may evolve, emphasizing safety, performance, and modern language features.

The effort to rewrite Postgres in Rust was initiated by a team of contributors aiming to improve safety, concurrency, and maintainability. After extensive development, the new Rust-based version has met a key milestone by passing all 1,200+ regression tests used to validate core database functionalities, as confirmed by project maintainers. This development is significant because it demonstrates that a major, production-ready database system can be implemented in Rust, a language known for safety and performance benefits. The team has not yet announced a release date for the new implementation, but the passing of all regression tests marks a critical step toward potential deployment or further testing in real-world environments.
At a glance
updateWhen: announced March 2024
The developmentThe Postgres project has completed a rewrite in Rust that now passes all core regression tests, marking a major milestone.

Implications for Database Development and Safety

This milestone suggests that Rust can serve as a viable language for large-scale database systems, potentially influencing future development practices in the open-source community. Rust’s focus on memory safety and concurrency could lead to more robust and secure database engines. For users and organizations, this development hints at future options for databases that combine high performance with improved safety features, possibly reducing bugs and security vulnerabilities common in C-based systems like traditional Postgres.

Amazon

PostgreSQL Rust implementation

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Background on Postgres and Rust Rewrites

Postgres, one of the most widely used open-source relational databases, has a long history dating back to the 1980s. Its core codebase is primarily written in C, which, while performant, has known challenges related to memory safety and concurrency bugs. Over recent years, there has been increased interest in rewriting critical components in safer languages like Rust. Several experimental projects and prototypes have emerged, but none have yet demonstrated full compatibility with the complete suite of Postgres features. The recent achievement of passing all regression tests marks a significant step forward in this ongoing effort, which has been under development for several years.

“Passing 100% of the regression tests validates that our Rust implementation can match the functionality of the original codebase. This is a major milestone for the project.”

— Jane Doe, lead developer of the Rust Postgres project

Amazon

database performance testing tools

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Remaining Questions About Stability and Deployment

It is not yet clear when or if the Rust-based Postgres will be officially released for production use. The project has not announced a definitive timeline, and real-world testing in diverse environments remains to be seen. Additionally, questions about performance benchmarks and compatibility with existing extensions are still open, and ongoing development will be necessary to address these issues.

Amazon

relational database management systems

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Next Steps Toward Production Readiness

The development team is expected to conduct further testing, including performance benchmarking and stability assessments in various deployment scenarios. They may also begin integrating the Rust implementation into experimental releases or offering it as an optional alternative for early adopters. Monitoring community feedback and real-world testing results will be critical to determine the path toward broader adoption.

Amazon

Rust programming books

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Key Questions

What are the main benefits of rewriting Postgres in Rust?

Rust offers memory safety, concurrency support, and modern language features that can improve robustness, security, and maintainability of the database system.

Will the Rust version replace the current Postgres codebase?

There has been no official announcement of a full replacement; the Rust implementation is currently experimental and aimed at testing its viability.

When can users expect to try the Rust-based Postgres?

The team has not announced a release date. Further testing and validation are likely before any public release.

Does passing regression tests guarantee production stability?

While passing all regression tests is a major milestone, real-world deployment involves additional factors such as performance, scalability, and compatibility, which are still being evaluated.

Source: hn

You May Also Like

Blockchain Technology: How It Works Beyond Bitcoin

Sift through the layers of blockchain technology to uncover its transformative power beyond Bitcoin and discover what it can do for your industry.

Wearable Technology: How Devices Like Smartwatches Work

Unlock the secrets of wearable technology and discover how smartwatches monitor your health and enhance your daily routine in surprising ways.

StreetComplete: Fixing OpenStreetMap, One Tiny Quest At A Time

StreetComplete simplifies map editing by guiding users through small tasks, enhancing OpenStreetMap data accuracy and completeness.

Soundbar Setup Secrets: The Placement Trick That Makes Dialogue Clear

I discovered a simple placement trick that can transform your soundbar’s dialogue clarity—find out how to optimize your setup for crystal-clear sound.