Glossary / MVCC (Multi-Version Concurrency Control)

MVCC (Multi-Version Concurrency Control)

Practical PostgreSQL glossary entry with a clear definition, example, and benchmarking context.

What Is MVCC (Multi-Version Concurrency Control)?

MVCC allows PostgreSQL to handle multiple transactions simultaneously without locking rows. It achieves this by maintaining different versions of the same data. This ensures consistent reads and high performance under concurrent workloads.

Why It Matters for PostgreSQL Performance

In PostgreSQL performance work, MVCC (Multi-Version Concurrency Control) affects throughput, latency, or operational reliability depending on workload and configuration.

Practical Benchmarking Context

When benchmarking with pgbench, track how MVCC (Multi-Version Concurrency Control) changes behavior across scale factor, client concurrency, and storage conditions.

Use this term together with workload shape, concurrency level, and scale factor when interpreting pgbench outputs. Isolated values can be misleading without full run context.

Example

See Also: txid_current() , xmin/xmax system columns

Related Resources