Multiversion Concurrency Control
Snapshot Isolation
Write skew
- Two transactions read overlapping data.
- They write disjoint data.
- The end result is not serializable?!
jao=# create table x(k int, v int);
jao=# insert into x values (1, 100), (2, 200);
jao=# select * from x;
k | v
---+-----
1 | 100
2 | 200
(2 rows)
|