When View- and Conflict-Robustness Coincide for Multiversion Concurrency Control

Saved in:
Bibliographic Details
Title: When View- and Conflict-Robustness Coincide for Multiversion Concurrency Control
Authors: Brecht Vandevoort, Bas Ketsman, Frank Neven
Contributors: Informatics and Applied Informatics, Software Languages Lab, VANDEVOORT, Brecht, KETSMAN, Bas, NEVEN, Frank
Source: Proceedings of the ACM on Management of Data. 2:1-16
Publication Status: Preprint
Publisher Information: Association for Computing Machinery (ACM), 2024.
Publication Year: 2024
Subject Terms: FOS: Computer and information sciences, Computer Science - Databases, 0202 electrical engineering, electronic engineering, information engineering, Databases (cs.DB), robustness, 0102 computer and information sciences, 02 engineering and technology, complexity, 01 natural sciences, CCS Concepts: • Information systems → Database transaction processing Additional Key Words and Phrases: concurrency control
Description: A DBMS allows trading consistency for efficiency through the allocation of isolation levels that are strictly weaker than serializability. The robustness problem asks whether, for a given set of transactions and a given allocation of isolation levels, every possible interleaved execution of those transactions that is allowed under the provided allocation, is always safe. In the literature, safe is interpreted as conflict-serializable (to which we refer here as conflict-robustness). In this paper, we study the view-robustness problem, interpreting safe as view-serializable. View-serializability is a more permissive notion that allows for a greater number of schedules to be serializable and aligns more closely with the intuitive understanding of what it means for a database to be consistent. However, view-serializability is more complex to analyze (e.g., conflict-serializability can be decided in polynomial time whereas deciding view-serializability is NP-complete). While conflict-robustness implies view-robustness, the converse does not hold in general. In this paper, we provide a sufficient condition for isolation levels guaranteeing that conflict- and view-robustness coincide and show that this condition is satisfied by the isolation levels occurring in Postgres and Oracle: read committed (RC), snapshot isolation (SI) and serializable snapshot isolation (SSI). It hence follows that for these systems, widening from conflict- to view-serializability does not allow for more sets of transactions to become robust. Interestingly, the complexity of deciding serializability within these isolation levels is still quite different. Indeed, deciding conflict-serializability for schedules allowed under RC and SI remains in polynomial time, while we show that deciding view-serializability within these isolation levels remains NP-complete.
Document Type: Article
File Description: application/pdf
Language: English
ISSN: 2836-6573
DOI: 10.1145/3651592
DOI: 10.48550/arxiv.2403.17665
Access URL: http://arxiv.org/abs/2403.17665
https://biblio.vub.ac.be/vubir/when-view-and-conflictrobustness-coincide-for-multiversion-concurrency-control(d603f220-4685-4272-8e36-989e09ec8d09).html
http://hdl.handle.net/1942/45427
Rights: arXiv Non-Exclusive Distribution
URL: https://www.acm.org/publications/policies/copyright_policy#Background
Accession Number: edsair.doi.dedup.....d2a9949f5ac13c065e10de79e35bae95
Database: OpenAIRE
Description
Abstract:A DBMS allows trading consistency for efficiency through the allocation of isolation levels that are strictly weaker than serializability. The robustness problem asks whether, for a given set of transactions and a given allocation of isolation levels, every possible interleaved execution of those transactions that is allowed under the provided allocation, is always safe. In the literature, safe is interpreted as conflict-serializable (to which we refer here as conflict-robustness). In this paper, we study the view-robustness problem, interpreting safe as view-serializable. View-serializability is a more permissive notion that allows for a greater number of schedules to be serializable and aligns more closely with the intuitive understanding of what it means for a database to be consistent. However, view-serializability is more complex to analyze (e.g., conflict-serializability can be decided in polynomial time whereas deciding view-serializability is NP-complete). While conflict-robustness implies view-robustness, the converse does not hold in general. In this paper, we provide a sufficient condition for isolation levels guaranteeing that conflict- and view-robustness coincide and show that this condition is satisfied by the isolation levels occurring in Postgres and Oracle: read committed (RC), snapshot isolation (SI) and serializable snapshot isolation (SSI). It hence follows that for these systems, widening from conflict- to view-serializability does not allow for more sets of transactions to become robust. Interestingly, the complexity of deciding serializability within these isolation levels is still quite different. Indeed, deciding conflict-serializability for schedules allowed under RC and SI remains in polynomial time, while we show that deciding view-serializability within these isolation levels remains NP-complete.
ISSN:28366573
DOI:10.1145/3651592