Jul 2026· Proceedings of the VLDB Endowment· Vol abs/2607.16452· 0 citations· 81 references
Computer Science
TL;DR
I-Rex is presented, a SQL debugger that enables users to inspect the logical execution of SQL queries visually and interactively to identify and potentially fix logical bugs in the queries and allows users to jump to arbitrary points of interest by leveraging the power of the database systems.
Abstract
SQL is declarative in nature and rich in its features. Writing semantically correct SQL queries and finding logical bugs in SQL are not easy, even for experienced programmers, who are often used to the mindset of working with general-purpose programming languages (GPLs). While there are many GPL debuggers, SQL debugging has received much less attention. In this paper, we present I-Rex, a SQL debugger that enables users to inspect the logical execution of SQL queries visually and interactively to identify and potentially fix logical bugs in the queries. I-Rex draws analogies to the debugging paradigm of GPLs (e.g., stepping, watchpoints, etc.), making it easier for programmers to adopt. However, unlike debugging GPLs, which involves executing the underlying program in full to the point of interest, I-Rex allows users to jump to arbitrary points of interest by leveraging the power of the database systems, through selective materialization and query rewrites. To simplify deployment, I-Rex acts as a lightweight middleware on top of the database system; it imposes no overhead to prepare a database for debugging and maintains no state in the database systems during debugging sessions. We demonstrate the effectiveness of I-Rex through performance experiments as well as a user study in an educational setting.
Datalog has become a widely adopted language in program analysis, security, and data-intensive systems. However, debugging Datalog programs remains fundamentally challenging due to their declarative semantics, lack of explicit control flow, and massive scale of derived facts. Existing approaches, such as inspecting pro...
Jia-Shen Wei, Bao-Yuan Luo, Run-Shuo Xie et al.· Proceedings of the ACM on Pr...· 0 citations
This paper revisits the connection between Datalog and relational databases, advocating recursive SQL as a backend for Datalog evaluation, and presents a compilation framework that translates Datalog programs, particularly those in the Linear Datalog fragment, into equivalent recursive SQL queries.
Amir Shaikhha, Anna Herlihy, Hung Q. Ngo· 0 citations
A debugging workflow that combines dynamic analysis with directed unit tests is introduced, and ACF, an infrastructure for automating this workflow is presented, indicating that ACF can help developers to isolate specific inputs causing an error, thus simplifying the process of locating faulty statements.
Roman Vašut, P. Parízek· Proceedings of the 14th Work...· 0 citations
We propose PKDB, the first interactive debugger for GPU and multithreaded low-level kernels written in Python. Python is widely used in high performance computing (HPC), with frameworks such as PyKokkos translating Python-embedded domain-specific languages to native code that runs across OpenMP-threaded CPUs and variou...
Ivan Grigorik, Gabriel Kosmacher, G. Biros et al.· 0 citations
This article is an attempt to share a method by which developers can efficiently isolate and remediate performance issues when they do not have direct access to the runtime environment by combining practical remote profiling, real-time monitoring, and targeted debugging techniques.
Madhurima Kommuru· American International Journ...· 0 citations