On the Complexity of Checking Mixed Isolation Levels for SQL Transactions

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

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.

Original languageEnglish
Title of host publicationComputer Aided Verification - 37th International Conference, CAV 2025, Proceedings
EditorsRuzica Piskac, Zvonimir Rakamaric
PublisherSpringer Science and Business Media Deutschland GmbH
Pages315-337
Number of pages23
ISBN (Print)9783031986840
DOIs
Publication statusPublished - 1 Jan 2025
Event37th International Conference on Computer Aided Verification, CAV 2025 - Zagreb, Croatia
Duration: 23 Jul 202525 Jul 2025

Publication series

NameLecture Notes in Computer Science
Volume15934 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference37th International Conference on Computer Aided Verification, CAV 2025
Country/TerritoryCroatia
CityZagreb
Period23/07/2525/07/25

Fingerprint

Dive into the research topics of 'On the Complexity of Checking Mixed Isolation Levels for SQL Transactions'. Together they form a unique fingerprint.

Cite this