# Supabase — OrioleDB public beta: a Postgres storage engine for update-heavy tables

- Company: Supabase (supabase.com)
- Announced: 2026-10-28
- Category: availability-change
- Coverage: not counted
- Announcement: yes
- Group: announcements
- Source: https://supabase.com/blog/orioledb-public-beta
- Record: https://forck.live/items/28855-orioledb-public-beta-a-postgres-storage-engine-for-update-heavy-tables
- Subject: Supabase
- Pricing: billed the same as standard Postgres

Supabase has put OrioleDB, an open-source storage engine for Postgres, into public beta on every plan, chosen when a project is created and billed the same as standard Postgres. The engine replaces Postgres's heap storage, which writes a new row version on every update and leaves dead tuples behind for autovacuum to clean up, causing bloat and slower queries on update-heavy tables. OrioleDB instead writes previous row versions to an undo log that is reclaimed automatically, so tables usually accumulate no dead tuples for VACUUM to handle. It also uses 64-bit transaction IDs that do not wrap around, stores rows inside the primary key index so a key lookup reads one structure instead of two, and writes only to indexes whose columns changed. Supabase says the beta ships with OrioleDB beta19 on Postgres 17.11, and that connection strings, Auth, Row Level Security policies and client libraries stay the same. In Supabase's DBArena benchmark, when data did not fit in memory OrioleDB had the highest throughput per dollar at every compute size tested, reaching 113,850 transactions per minute on an 8XL instance, about 1.8x more than Supabase Postgres on heap. Supabase says the beta is for testing, carries no SLA and is not ready for production, and that OrioleDB cannot be added to an existing project.

## Evidence

Verbatim from https://supabase.com/blog/orioledb-public-beta:

> OrioleDB, an open-source storage engine for Postgres, is now in public beta on every Supabase plan. We announced the public beta at Supabase Select , alongside Multigres and DBArena. Pick OrioleDB when you create a project. It's billed the same as standard Postgres. Compute and disk resizing, read replicas, Postgres upgrades, and scheduled backups work. It's not ready for production yet.
> 
> The problem with Postgres’s default storage engine #
> 
> Postgres stores table rows in a format called the heap. An update doesn't change a row in place. Postgres writes a new version and leaves the old one behind as a dead tuple. Because every index points to a row’s physical location, the new version usually needs a new entry in every index on the table, even indexes on columns that didn’t change. Deletes leave dead tuples too.
> 
> Postgres cleans up the old row versions with a process called VACUUM, and a background process called autovacuum runs it automatically once enough dead tuples build up in a table. On tables with a lot of updates or deletes, autovacuum can fall behind.

---

Record: https://forck.live/items/28855-orioledb-public-beta-a-postgres-storage-engine-for-update-heavy-tables
Catalogue: https://forck.live/llms.txt
Current issue: https://forck.live/feed.md
