Join us

PostgreSQL MVCC, Byte by Byte

PostgreSQL MVCC, Byte by Byte

PostgreSQL's MVCC stores two 32-bit XIDs per tuple - xmin and xmax. The transaction snapshot decides visibility per tuple. Updates append new tuples and mark the old with xmax. VACUUM reclaims versions only when no active snapshot can see them. Long-running REPEATABLE READ snapshots pin versions and cause bloat.

Why it matters: Long-running REPEATABLE READ snapshots pin tuple versions. Teams must watch idle transactions and tune autovacuum or switch isolation levels to avoid bloat and extra I/O.


Give a Pawfive to this post!


Only registered users can post comments. Please, login or signup.

Start writing about what excites you in tech — connect with developers, grow your voice, and get rewarded.

Join other developers and claim your FAUN.dev() account now!

Avatar

VarBear #SoftwareEngineering

FAUN.dev()

@varbear
SWE Weekly Newsletter, Varbear. Curated Programming news, tutorials, tools and more!
Developer Influence
26

Influence

1

Total Hits

146

Posts