Multiversion Data (cont’d)
Execute update transactions using ordinary 2PL
Execute queries in snapshot mode
- System keeps a commit list of tids of all committed txns
- When a query starts executing, it reads the commit list
- When a query reads x, it reads the latest version of x written by a transaction on its commit list
- Thus, it reads the database state that existed when it started running