Title
Serializable executions with snapshot isolation: modifying application code or mixing isolation levels?
Abstract
Snapshot Isolation concurrency control (SI) allows substantial performance gains compared to holding commit-duration readlocks, while still avoiding many anomalies such as lost updates or inconsistent reads. However, for some sets of application programs, SI can result in non-serializable execution, in which database integrity constraints can be violated. The literature reports two different approaches to ensuring all executions are serializable while still using SI for concurrency control. In one approach, the application programs are modified (without changing their stand-alone semantics) by introducing extra conflicts. In the other approach, the application programs are not changed, but a small subset of them must be run using standard two-phase locking rather than SI. We compare the performance impact of these two approaches. Our conclusion is that the convenience of preserving the application code (and adjusting only the isolation level for some transactions) leads to a very substantial performance penalty against the best that can be done through application modification.
Year
Venue
Keywords
2008
DASFAA
modifying application code,application code,serializable execution,performance impact,isolation level,substantial performance gain,snapshot isolation,different approach,concurrency control,application modification,commit-duration readlocks,substantial performance penalty,snapshot isolation concurrency control,application program,database integration
Field
DocType
Volume
Snapshot isolation,Isolation (database systems),Serialization,Concurrency control,Computer science,Multiversion concurrency control,Data integrity,Non-lock concurrency control,Semantics,Database,Distributed computing
Conference
4947
ISSN
ISBN
Citations 
0302-9743
3-540-78567-1
5
PageRank 
References 
Authors
0.53
13
4
Name
Order
Citations
PageRank
Mohammad Alomari11678.89
Michael Cahill250.53
Alan David Fekete31610201.97
Uwe Röhm430831.42