On the Complexity of Checking Mixed Isolation Levels for SQL Transactions

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Bouajjani, Ahmed, Enea, Constantin, Román-Calvo, Enrique
Natura: Preprint
Pubblicazione: 2025
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866908450291712000
author Bouajjani, Ahmed
Enea, Constantin
Román-Calvo, Enrique
author_facet Bouajjani, Ahmed
Enea, Constantin
Román-Calvo, Enrique
contents Concurrent accesses to databases are typically grouped in transactions which define units of work that should be isolated from other concurrent computations and resilient to failures. Modern databases provide different levels of isolation for transactions that correspond to different trade-offs between consistency and throughput. Quite often, an application can use transactions with different isolation levels at the same time. In this work, we investigate the problem of testing isolation level implementations in databases, i.e., checking whether a given execution composed of multiple transactions adheres to the prescribed isolation level semantics. We particularly focus on transactions formed of SQL queries and the use of multiple isolation levels at the same time. We show that many restrictions of this problem are NP-complete and provide an algorithm which is exponential-time in the worst-case, polynomial-time in relevant cases, and practically efficient.
format Preprint
id arxiv_https___arxiv_org_abs_2505_18409
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle On the Complexity of Checking Mixed Isolation Levels for SQL Transactions
Bouajjani, Ahmed
Enea, Constantin
Román-Calvo, Enrique
Databases
Programming Languages
Concurrent accesses to databases are typically grouped in transactions which define units of work that should be isolated from other concurrent computations and resilient to failures. Modern databases provide different levels of isolation for transactions that correspond to different trade-offs between consistency and throughput. Quite often, an application can use transactions with different isolation levels at the same time. In this work, we investigate the problem of testing isolation level implementations in databases, i.e., checking whether a given execution composed of multiple transactions adheres to the prescribed isolation level semantics. We particularly focus on transactions formed of SQL queries and the use of multiple isolation levels at the same time. We show that many restrictions of this problem are NP-complete and provide an algorithm which is exponential-time in the worst-case, polynomial-time in relevant cases, and practically efficient.
title On the Complexity of Checking Mixed Isolation Levels for SQL Transactions
topic Databases
Programming Languages
url https://arxiv.org/abs/2505.18409