MVCC writes create committed versions in timestamp order.

highlighted = computed this step

Writes create versions

MVCC keeps committed versions instead of replacing the visible history with one cell. Each version carries a value, writer, and commit timestamp. Note: the chain is sorted by commit timestamp.

version chain\text{version chain}

Version chain

The compiled model has 1 item chain and 2 versions. Note: version values and timestamps appear in the render.

chains=1,versions=2\text{chains}=1,\quad \text{versions}=2

2PL and MVCC are exact protocol traces on tiny schedules; real lock managers, deadlock avoidance/timeouts, version garbage-collection, and isolation-level tuning are beyond these traces - no product claims.

MVCC version chainitemversionvaluewritercommitTsAv11T110Av22T220 snapshot readsreaderitemstartTsseesvalue

Summary

A version chain gives snapshot reads a stable history to choose from. Note: 2PL and MVCC are exact protocol traces here; real lock managers, timeouts, garbage collection, and isolation tuning are beyond these traces.

versions first\text{versions first}