← Graph

MVCC Trade-offs in Postgres vs MySQL

concept 1 connections

Contrasting approaches to multi-version concurrency control: Postgres handles an UPDATE by marking the old row stale and inserting a new row — older transactions keep seeing the original, newer transactions see the new, and VACUUM eventually reclaims stale rows; correct but costs space and requires maintenance. MySQL updates the row in place and keeps rollback information in a secondary segment — because most transactions commit quickly and rarely need to read the stale version, update-in-place ends up faster in practice.

category
architecture
about
MVCC Trade-offs in Postgres vs MySQL concept
Explains Postgres stale-row + VACUUM vs MySQL update-in-place + rollback segment.

Provenance

Read by
5 extractions