MVCC snapshot
The consistent "snapshot" of the database that a transaction sees under Multi-Version Concurrency Control. Each transaction reads the version of each row that was valid when its snapshot was taken — so readers never block writers and vice versa.
Mechanic: instead of locking rows on read, MVCC keeps several versions of each row. When a transaction (or statement) starts it gets a snapshot defining which other transactions were committed at that point. A read only sees versions from transactions included in the snapshot → a stable, consistent view even while others write. PostgreSQL stores old versions in the table itself (cleaned by VACUUM); InnoDB reconstructs them via the undo log. Win: high concurrency, "readers don't block writers". This is what makes isolation levels like Repeatable Read and snapshot isolation possible. The foundation of modern transaction concurrency. Related to undo log and serialization failure.