Debugging Transactions and Tracking their Provenance with Reenactment
Xing Niu, Bahareh Sadat Arab, Seokki Lee, Su Feng, Xun Zou, Dieter, Gawlick, Vasudha Krishnaswamy, Zhen Hua Liu, Boris Glavic

TL;DR
This paper introduces a non-invasive, post-mortem debugging approach for database transactions that leverages reenactment and provenance tracking to understand and diagnose transaction behavior after execution.
Contribution
It presents a novel reenactment-based debugger that enables post-mortem transaction analysis without modifying existing database systems.
Findings
Supports what-if scenarios for transaction debugging
Reenactment accurately reproduces transaction execution including concurrency effects
Does not require changes to underlying database systems
Abstract
Debugging transactions and understanding their execution are of immense importance for developing OLAP applications, to trace causes of errors in production systems, and to audit the operations of a database. However, debugging transactions is hard for several reasons: 1) after the execution of a transaction, its input is no longer available for debugging, 2) internal states of a transaction are typically not accessible, and 3) the execution of a transaction may be affected by concurrently running transactions. We present a debugger for transactions that enables non-invasive, post-mortem debugging of transactions with provenance tracking and supports what-if scenarios (changes to transaction code or data). Using reenactment, a declarative replay technique we have developed, a transaction is replayed over the state of the DB seen by its original execution including all its interactions…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsScientific Computing and Data Management · Distributed systems and fault tolerance · Data Quality and Management
