Skip to content
TrackPodcasts
technologyJan 25, 20221:00:25pending

Episode 496: Bruce Momjian on Multi-Version Concurrency Control in Postgres (MVCC)

About this episode

This week, Postgres server developer Bruce Momjian joins host Robert Blumen for a discussion of multi-version concurrency control (MVCC) in the Postgres database. They begin with a discussion of the isolation requirement in database transactions (I in ACID); how isolation can be achieved with locking; limitations of locking; how locking limits concurrency and creates variability in query runtimes; multi-version concurrency control as a means to achieve isolation; how Postgres manages multiple versions of a row; snapshots; copy-on-write and snapshots; visibility; database transaction IDs; how tx ids, snapshots and versions interact; the need for locking when there are multiple writers; how MVCC was added to Postgres; and how to clean up unused space left over from aged-out versions.

Get every episode summarized

Each time Software Engineering Radio - the podcast for professional software developers publishes, we email you a written briefing from the transcript — the topics, who appeared, and any specific claims, with the ad reads skipped.

Email me new episodes

Free for 3 shows. No card needed.

No transcript yet

This episode has not been transcribed. Request it and it moves to the front of the queue.

Episode 496: Bruce Momjian on Multi-Version Concurrency Control in Postgres (MVCC)

Software Engineering Radio - the podcast for professional software developers

0:00
1:00:25

More episodes

More from Software Engineering Radio - the podcast for professional software developers

View all episodes →