The DOI matches its Crossref record; 10 of the 10 references it cites were found in a registry or an index.
Making snapshot isolation serializable
Abstract
Snapshot Isolation (SI) is a multiversion concurrency control algorithm, first described in Berenson et al. [1995]. SI is attractive because it provides an isolation level that avoids many of the common concurrency anomalies, and has been implemented by Oracle and Microsoft SQL Server (with certain minor variations). SI does not guarantee serializability in all cases, but the TPC-C benchmark application [TPC-C], for example, executes under SI without serialization anomalies. All major database system products are delivered with default nonserializable isolation levels, often ones that encounter serialization anomalies more commonly than SI, and we suspect that numerous isolation errors occur each day at many large sites because of this, leading to corrupt data sometimes noted in data warehouse applications. The classical justification for lower isolation levels is that applications can be run under such levels to improve efficiency when they can be shown not to result in serious errors, but little or no guidance has been offered to application programmers and DBAs by vendors as to how to avoid such errors. This article develops a theory that characterizes when nonserializable executions of applications can occur under SI. Near the end of the article, we apply this theory to demonstrate that the TPC-C benchmark application has no serialization anomalies under SI, and then discuss how this demonstration can be generalized to other applications. We also present a discussion on how to modify the program logic of applications that are nonserializable under SI so that serializability will be guaranteed.
Overview
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Integrity signals
Registry
Cites
Statistics
Verification
Claims the paper makes
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Self-check
Percentages, sums and reported differences re-computed from the paper’s own numbers.
The self-check needs the paper’s full text.
Citations
Cites
Transaction Processing: Concepts and Techniques
Gray, J., & Reuter, A. (1992) · Cited by 3,000
The notions of consistency and predicate locks in a database system
Eswaran, K. P., Gray, J. N., Lorie, R. A., & Traiger, I. L. (1976) · Communications of the ACM · doi:10.1145/360363.360369 · Cited by 1,956
Welsh, D. J. A. (1974) · Bulletin of the London Mathematical Society · doi:10.1112/blms/6.2.218b · Cited by 1,046
The dangers of replication and a solution
Gray, J., Helland, P., O'Neil, P., & Shasha, D. (1996) · Proceedings of the 1996 ACM SIGMOD international conference on Management of data - SIGMOD '96 · doi:10.1145/233269.233330 · Cited by 1,019
Self-citationA critique of ANSI SQL isolation levels
Berenson, H., Bernstein, P., Gray, J., Melton, J., O'Neil, E., & O'Neil, P. (1995) · Proceedings of the 1995 ACM SIGMOD international conference on Management of data - SIGMOD '95 · doi:10.1145/223784.223785 · Cited by 856
Self-citationThe theory of database concurrency control
Papadimitriou, C. H. (1986) · Cumulative Index of Computer Aided Architectural Design · Cited by 445
A history and evaluation of System R
Chamberlin, D. D., Astrahan, M. M., Blasgen, M. W., Gray, J. N., King, W. F., Lindsay, B. G., Lorie, R., Mehl, J. W., Price, T. G., Putzolu, F., et al. (1981) · Communications of the ACM · doi:10.1145/358769.358784 · Cited by 273
Generalized isolation level definitions
Adya, A., Liskov, B., & O'Neil, P. (2002) · Proceedings of 16th International Conference on Data Engineering (Cat. No.00CB37073) · doi:10.1109/icde.2000.839388 · Cited by 176
Self-citationA read-only transaction anomaly under snapshot isolation
Fekete, A. D., O'Neil, E. J., & O׳Neil, P. E. (2004) · ACM SIGMOD Record · doi:10.1145/1031570.1031573 · Cited by 73
Self-citationSemantic conditions for correctness at different isolation levels
Bernstein, A. J., Lewis, P., & Lu, S. (2002) · IEEE International Conference on Data Engineering (ICDE) · doi:10.1109/icde.2000.839387 · Cited by 39
Cited by
Serializable isolation for snapshot databases
Cahill, M. J., Röhm, U., & Fekete, A. D. (2008) · Proceedings of the 2008 ACM SIGMOD international conference on Management of data · doi:10.1145/1376616.1376690 · Cited by 120
Self-citationTOKI: A Bitemporal Operator Algebra for Contradiction Resolution in LLM-Agent Persistent Memory
Wang, Z. (2026) · arXiv · doi:10.48550/arxiv.2606.06240 · Cited by 15
Metadata
- Authors
- Fekete, A., Liarokapis, D., O'Neil, E., O'Neil, P., & Shasha, D.
- Venue
- ACM Transactions on Database Systems
- Published
- 2005-06
- Volume
- 30
- Issue
- 2
- Pages
- 492-528
- ISSN
- 0362-5915 (ISSN-L)
- 1557-4644
- OpenAlex
- W1996952974
- Cited by
- 317
- References
- 10
- FWCI
- 16.04
- Type
- journal article
- Language
- en
- Open access
- closed
About these checks
Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.
Statistics and arithmetic are recomputed, not judged.
Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.
What counts as a claim ›How we measure confidence ›How we check this ›
Are you an author, or do you see a problem with this page? Request a review
How to cite
Cite CoChat for the checks on this page, and the paper for its own findings.
- This page
- CoChat. (2026). Citation check: Making snapshot isolation serializable. https://app.cochat.ai/papers/10.1145/1071610.1071615
- The paper
- Fekete, A., Liarokapis, D., O'Neil, E., O'Neil, P., & Shasha, D. (2005). Making snapshot isolation serializable. ACM Transactions on Database Systems. https://doi.org/10.1145/1071610.1071615
Data sources
Bibliographic data: Semantic Scholar, OpenAlex, Crossref.
Contains information from the Semantic Scholar Academic Graph Datasets, made available under the ODC Attribution License (ODC-BY 1.0).
Semantic Scholar’s data is described in: Kinney, R., et al. (2023). The Semantic Scholar Open Data Platform. arXiv:2301.10140.