<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/pg-rust-co-creator-postgres-fm-interview-scaling-postgres-431-ryvptuuds" -->

---
title: pg_rust Co-Creator postgres.fm Interview | Scaling...
description: A roundup covering the Postgres.fm interview with a PG Rust co-creator discussing the Postgres rewrite in Rust, its testing/fuzzing strategy against the...
canonical: https://daily.dev/posts/pg-rust-co-creator-postgres-fm-interview-scaling-postgres-431-ryvptuuds
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: pg_rust Co-Creator postgres.fm Interview | Scaling Postgres 431 | daily.dev
og:description: A roundup covering the Postgres.fm interview with a PG Rust co-creator discussing the Postgres rewrite in Rust, its testing/fuzzing strategy against the...
og:url: https://daily.dev/posts/pg-rust-co-creator-postgres-fm-interview-scaling-postgres-431-ryvptuuds
og:image: https://api.daily.dev/og/posts/RyVpTuuDs.png
og:image:alt: pg_rust Co-Creator postgres.fm Interview | Scaling Postgres 431
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# pg_rust Co-Creator postgres.fm Interview | Scaling Postgres 431

**[Scaling Postgres](https://daily.dev/sources/scaling-postgres)** · 11 min read · 8 upvotes · 1 comments

## Summary

A roundup covering the Postgres.fm interview with a PG Rust co-creator discussing the Postgres rewrite in Rust, its testing/fuzzing strategy against the ~2/3-covered Postgres regression suite, and a proposed migration path starting as a read replica for analytical queries. Also covered: a comparison of PgDog versus AWS RDS Proxy on connection pinning, autoscaling, and performance; a 10-minute guide to deploying CloudNativePG-style HA clusters on Kubernetes; Crunchy Data's revised Postgres advice for version 19 covering async I/O, vacuum, BRIN indexes, skip scan, and partitioning; new failover slot synchronization enhancements coming in Postgres 19; a free 'yesql' lesson series for learning Postgres/SQL; and an analysis of Google's AlloyDB storage architecture built on Colossus.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.youtube.com/watch?v=hrUjqfS33Mk>

## Questions this post answers

### What is PG Rust and how does it ensure compatibility with regular Postgres?

PG Rust is a project rewriting PostgreSQL's internals in Rust, aiming for behavioral compatibility with the original C-based Postgres. Because passing Postgres's own regression suite is considered a low bar (Postgres reportedly has only about two-thirds test coverage), the PG Rust team built custom fuzzers that test both the C and Rust code paths to confirm functions return identical results, and they report bugs found in Postgres back to the project.

_Developers weighing a Postgres rewrite's reliability can track PG Rust's testing progress on daily.dev._

### How does connection pinning in AWS RDS Proxy differ from PgDog's pooling behavior?

RDS Proxy pins a database connection to a single application connection whenever a SET statement, temporary table, certain advisory locks, or a long query (over 16 kilobytes of query text) is used, negating pooling benefits. PgDog avoids this by using a built-in Postgres parser that handles queries up to 1 gigobyte and automatically transplants session state between Postgres connections instead of pinning them.

_Teams comparing connection poolers for Postgres can weigh tradeoffs like these before migrating on daily.dev._

### What changed with BRIN indexes and heap scans in Postgres 18 and 19?

Async IO and faster heap scan performance introduced in Postgres 18 and continued in 19 mean parallel sequential scans can now outperform certain indexes in more cases than before. BRIN indexes also gained richer operator classes and faster build times in these versions, though they still only pay off when the indexed column correlates with physical row order.

_Developers tuning indexing strategy for newer Postgres versions can follow these changes on daily.dev._

## Community discussion

Top comments from developers on daily.dev.

**@pdfopsdev** · 1 upvotes

> differential fuzzing C against Rust is the only way I'd trust a from-scratch pg rewrite, output equality testing catches way more than reimplementing the spec and hoping. it's finding bugs in the original C too, that's the real signal it's working.

## Similar posts on daily.dev

- [GitHub - malisper/pgrust: Postgres rewritten in Rust, now passing 100% of the Postgres regression tests](https://daily.dev/posts/github---malisper-pgrust-postgres-rewritten-in-rust-now-passing-100-of-the-postgres-regression-te-t4anp8pcl) · Hacker News · 4 upvotes · 0 comments
- [Rebuilding Postgres for 300x faster analytics: batching, operator fusion, and SIMD](https://daily.dev/posts/rebuilding-postgres-for-300x-faster-analytics-batching-operator-fusion-and-simd-tgtpnmlyi) · Hacker News · 0 upvotes · 0 comments
- [Building scalable backend services with Rust and PostgreSQL](https://daily.dev/posts/building-scalable-backend-services-with-rust-and-postgresql-tlwj69w1v) · Sylvain Kerkour · 6 upvotes · 3 comments

---

Tags: [#kubernetes](https://daily.dev/tags/kubernetes), [#database](https://daily.dev/tags/database), [#postgresql](https://daily.dev/tags/postgresql)

[View this post on daily.dev](https://daily.dev/posts/pg-rust-co-creator-postgres-fm-interview-scaling-postgres-431-ryvptuuds)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"pg_rust Co-Creator postgres.fm Interview | Scaling Postgres 431","url":"https://daily.dev/posts/pg-rust-co-creator-postgres-fm-interview-scaling-postgres-431-ryvptuuds","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/pg-rust-co-creator-postgres-fm-interview-scaling-postgres-431-ryvptuuds"},"datePublished":"2026-08-23T21:30:00.195Z","dateModified":"2026-09-14T09:21:39.919Z","description":"A roundup covering the Postgres.fm interview with a PG Rust co-creator discussing the Postgres rewrite in Rust, its testing/fuzzing strategy against the...","image":"https://i.ytimg.com/vi/hrUjqfS33Mk/sddefault.jpg","thumbnailUrl":"https://i.ytimg.com/vi/hrUjqfS33Mk/sddefault.jpg","isAccessibleForFree":true,"articleSection":"Scaling Postgres","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Scaling Postgres","logo":"https://media.daily.dev/image/upload/s--RbakkUgu--/f_auto,q_auto/v1780213462/logos/scaling-postgres?_a=BAMAMiWQ0","url":"https://daily.dev/sources/scaling-postgres"},"commentCount":1,"discussionUrl":"https://daily.dev/posts/pg-rust-co-creator-postgres-fm-interview-scaling-postgres-431-ryvptuuds","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":8},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":1}],"keywords":"kubernetes,database,postgresql","timeRequired":"PT11M","video":{"@type":"VideoObject","name":"pg_rust Co-Creator postgres.fm Interview | Scaling Postgres 431","description":"A roundup covering the Postgres.fm interview with a PG Rust co-creator discussing the Postgres rewrite in Rust, its testing/fuzzing strategy against the...","thumbnailUrl":"https://i.ytimg.com/vi/hrUjqfS33Mk/sddefault.jpg","uploadDate":"2026-08-23T21:30:00.195Z","duration":"PT11M","url":"https://api.daily.dev/r/RyVpTuuDs","embedUrl":"https://www.youtube.com/embed/hrUjqfS33Mk"}}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Scaling Postgres","item":"https://daily.dev/sources/scaling-postgres"},{"@type":"ListItem","position":3,"name":"pg_rust Co-Creator postgres.fm Interview | Scaling Postgres 431"}]}
{"@context":"https://schema.org","@type":"WebPage","@id":"https://daily.dev/posts/pg-rust-co-creator-postgres-fm-interview-scaling-postgres-431-ryvptuuds","comment":[{"@type":"Comment","text":"differential fuzzing C against Rust is the only way I’d trust a from-scratch pg rewrite, output equality testing catches way more than reimplementing the spec and hoping. it’s finding bugs in the original C too, that’s the real signal it’s working.","datePublished":"2026-08-24T18:10:16.376Z","url":"https://daily.dev/posts/RyVpTuuDs#c-Yh4ISDwrD","author":{"@type":"Person","name":"PDFops","url":"https://daily.dev/pdfopsdev","image":"https://media.daily.dev/image/upload/s---8isRBKc--/f_auto/v1782922291/avatars/avatar_orjMeK8QKaaVZwGq7ScPz?_a=BAMAMicg0"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":1}}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/pg-rust-co-creator-postgres-fm-interview-scaling-postgres-431-ryvptuuds#faq","mainEntity":[{"@type":"Question","name":"What is PG Rust and how does it ensure compatibility with regular Postgres?","acceptedAnswer":{"@type":"Answer","text":"PG Rust is a project rewriting PostgreSQL's internals in Rust, aiming for behavioral compatibility with the original C-based Postgres. Because passing Postgres's own regression suite is considered a low bar (Postgres reportedly has only about two-thirds test coverage), the PG Rust team built custom fuzzers that test both the C and Rust code paths to confirm functions return identical results, and they report bugs found in Postgres back to the project. Developers weighing a Postgres rewrite's reliability can track PG Rust's testing progress on daily.dev."}},{"@type":"Question","name":"How does connection pinning in AWS RDS Proxy differ from PgDog's pooling behavior?","acceptedAnswer":{"@type":"Answer","text":"RDS Proxy pins a database connection to a single application connection whenever a SET statement, temporary table, certain advisory locks, or a long query (over 16 kilobytes of query text) is used, negating pooling benefits. PgDog avoids this by using a built-in Postgres parser that handles queries up to 1 gigobyte and automatically transplants session state between Postgres connections instead of pinning them. Teams comparing connection poolers for Postgres can weigh tradeoffs like these before migrating on daily.dev."}},{"@type":"Question","name":"What changed with BRIN indexes and heap scans in Postgres 18 and 19?","acceptedAnswer":{"@type":"Answer","text":"Async IO and faster heap scan performance introduced in Postgres 18 and continued in 19 mean parallel sequential scans can now outperform certain indexes in more cases than before. BRIN indexes also gained richer operator classes and faster build times in these versions, though they still only pay off when the indexed column correlates with physical row order. Developers tuning indexing strategy for newer Postgres versions can follow these changes on daily.dev."}}]}
```

