GRAIL

Checking Transaction Isolation Violations with Graph Queries

Conference Paper (2024)
Authors

Stefania Dumbrava (ENSIIE)

Zhao Jin (ENSIIE)

Burcu Kulahcioglu Özkan (TU Delft - Software Engineering)

Jingxuan Qiu (Student TU Delft)

Research Group
Software Engineering
To reference this document use:
https://doi.org/10.1145/3639478.3643094
More Info
expand_more
Publication Year
2024
Language
English
Research Group
Software Engineering
Pages (from-to)
320-321
ISBN (electronic)
9798400705021
DOI:
https://doi.org/10.1145/3639478.3643094
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Distributed databases are surging in popularity with the growing need for performance and fault tolerance. However, implementing transaction isolation models on distributed databases is more challenging due to their sharding and replication. As a result, they can produce executions that violate their claimed isolation guarantees. In this work, we propose a novel isolation model-agnostic approach that utilizes graph databases to efficiently detect isolation violations expressed as anti-patterns in transactional dependency graphs. To illustrate our approach, we introduce the GRAIL framework, implemented on top of the popular ArangoDB and Neo4j graph databases. GRAIL combines soundness guarantees and high performance with understandable, detailed counter-examples.