news.volyx.in

Postgres rewritten in Rust, now passing 100% of the Postgres regression tests (github.com)

804 points by SweetSoftPillow · 2 days ago · 716 comments on HN

Article summary

A Postgres database rewrite in Rust, called pgrust, has been completed and is now passing 100% of the Postgres regression tests. The project aims to make Postgres easier to modify and improve from the inside, using Rust and AI-assisted programming. pgrust is not yet production-ready and still requires further optimization and compatibility work. The project has achieved significant performance improvements, including being 50% faster than Postgres on transaction workloads and 300x faster on analytical workloads.

Main themes

  • Postgres rewrite in Rust
  • AI-assisted programming
  • Database performance optimization
  • Code quality and maintainability
  • Language conversion and compatibility

What commenters say

  • The use of AI in code generation can produce high-quality code, but its quality is correlated with the skill of the developer using it.
  • There is a distinction to be made between a manual rewrite and an AI-assisted rewrite, with some arguing that the latter may not be as trustworthy.
  • The majority of new ambitious projects will likely leverage AI to some degree, making the question of what constitutes an 'AI rewrite' increasingly relevant.
  • Some argue that AI-generated code can be of higher quality than human-written code, while others prefer human coders due to trust and reliability concerns.
  • The quality of AI-generated code is not fixed and can be improved through post-training and context provision.
  • The use of AI in coding may become more prevalent as it can perform tasks that humans may not want to do, such as rewriting entire technologies.
  • There is a need to differentiate between good and bad AI-generated code, as not all AI-generated code is of the same quality.
  • Human judgment and expertise are still necessary to evaluate the quality of AI-generated code and determine what constitutes 'above average' or 'below average' code.