Jeg synes, at den forventede adfærd er lidt ude. Før db_slow commits, er alle rækker i tabellen låst. Efter det er forpligtet, er der to rækker. db_fast ophæves, når db_slow commits. Derfor er adfærden:
- db_slow:vælg række 1 og lås den
- db_slow:se, at det kun er 1 række, og vent
- db_fast:prøv at vælge række 1, se at den er låst, vent
- db_slow:indsæt række med '2'
- db_slow:begå
- db_fast:ophævet og læser 2 rækker
- db_fast:gør ikke noget
- Ender med foo:1, 2