jargon

Backend & systems·Transactions and isolation

an update writes a new version of the row instead of overwriting it, so readers already in flight keep seeing the old one.

MVCC

Also calledmulti-version concurrency control

Keeping multiple versions of each row so that readers see the version valid for their snapshot rather than waiting on a lock. It is what makes concurrent reads cheap. The cost is garbage: dead versions accumulate and must be reclaimed, and a single long-running transaction can pin them all, bloating tables and slowing everything down.

Commonly confused with