PostgreSQL
Reimagined.
PostgreSQL's architecture hasn't changed since 1986.
Every connection forks an OS process. Every idle session wastes 14.6 MB.
We built the fix.
The Problem is Architectural
PostgreSQL forks a new OS process for every connection. In 1986, this was the only way. Today, it's the single biggest bottleneck in the most popular database in the world.
Each PostgreSQL backend process consumes ~14.6 MB even when doing nothing. 100 idle connections = 1.4 GB wasted.
Our benchmark: PostgreSQL 17 uses +729 MB for 50 idle connections. pgrx uses +0 KB.
Process-per-connection, in-heap MVCC, double-buffered I/O, 32-bit XIDs. Band-aids on top of 1986 decisions.
50 Idle Connections: Memory Usage
Real benchmark: PostgreSQL 17.8 vs pgrx on same hardware. 50 persistent connections, each ran SELECT 1, then idle 30s.
The Insight: BEAM + Rust
PostgreSQL's process-per-connection model is essentially a worse version of Erlang/BEAM's actor model. BEAM handles millions of lightweight processes at ~2 KB each. Rust handles memory-safe, zero-cost storage and query execution. Together, they eliminate every architectural bottleneck.
BEAM / Elixir
- +Lightweight processes (~2 KB vs 14.6 MB per PG fork)
- +Hibernate idle connections to ~400 bytes
- +Supervision trees for fault tolerance
- +Hot code upgrades (zero-downtime deploys)
- +Wire protocol v3 (simple + extended query)
- +Built-in connection pooling (no PgBouncer)
Rust Engine
- +pg_query — 100% PostgreSQL-compatible SQL parser
- +Memory-safe expression evaluation + JOINs
- +Checked arithmetic (no integer overflow panics)
- +SIMD-ready for future vector operations
- +NIF integration (zero-copy BEAM ↔ Rust)
- +Shared state via RwLock (no per-connection duplication)
Same Query. Different Engine.
pgrx runs real PostgreSQL SQL — same syntax, same drivers, same tools. The difference is what happens underneath.
All of this runs on pgrx today
SELECT u.name, COUNT(*), SUM(o.total)
FROM users u
JOIN orders o ON u.id = o.user_id
WHERE o.total > 50
GROUP BY u.name
HAVING COUNT(*) > 1
ORDER BY SUM(o.total) DESC
LIMIT 10;The Numbers
| Metric | PostgreSQL 17 | Neon | pgrx |
|---|---|---|---|
| Per idle connection | 14.6 MB | ~0 (proxy pooled) | 0 KB |
| Per active connection | 14.6 MB | 14.6 MB (backend) | ~15 KB |
| 50 connections overhead | +729 MB | shared compute | +768 KB |
| Cold start | 0 ms | 300-500 ms | 0 ms |
| Min active compute | 30 MB | 1 GB (0.25 CU) | ~134 MB |
| Connection model | fork() per conn | fork() + proxy | BEAM process |
| Architecture year | 1986 | 1986 + cloud | 2026 |
Roadmap
From proof-of-concept to production. Each phase builds on the last.
SQL Engine Foundation
✓ Completepgvector Compatibility
→ Up NextPersistent Storage
Production Ready
Open Source. Solo Built.
pgrx is built by a single developer, open source under BSL 1.1. No VC funding. No corporate backing. Just code.
The Best Time to Fix PostgreSQL
Was 20 Years Ago.
The Second Best Time is Now.
pgrx is open source (BSL 1.1). The engine is real, the benchmarks are real, and the architecture is proven. We're looking for grants and collaborators to take it to production.