Automated Debugging of Datalog ProgramsDistinguished Paper
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 proof trees, algorithmic debugging, or interactive debugging, all require developers to manually navigate through deeply recursive derivations, which quickly becomes infeasible for real-world programs.
In this paper, we take a step toward fully automated debugging of Datalog programs. Our key insight is to reinterpret Datalog execution through a statistical lens: instead of explaining individual facts, we analyze multiple facts collectively, treating derived facts as test cases and their proof trees as execution spectra. This abstraction enables us to adapt Spectrum-based Fault Localization (SBFL) to Datalog, bridging the paradigm gap between declarative logic programs and automated debugging techniques originally designed for imperative languages. To enable systematic evaluation, we construct, to the best of our knowledge, the first benchmark suite for Datalog debugging, comprising 96 real-world instances (37 unique faults) mined from the evolution history of the Doop framework. Each instance is annotated with ground-truth faulty rules and organized under a three-level fault taxonomy. Experimental results demonstrate that our approach effectively localizes faults without any user interaction. The best suspiciousness metric achieves 87.50% Hit@1 (i.e., top-1 hit rate) for faulty rule localization, while faulty predicate localization reaches 37.50%–53.12% Hit@1.
Mon 5 OctDisplayed time zone: Pacific Time (US & Canada) change
10:30 - 12:00 | Debugging and Fault LocalizationOOPSLA at East Hall 1 Chair(s): Alastair F. Donaldson Imperial College London | ||
10:30 18mTalk | Debugging Debugging Information using Dynamic Call Trees OOPSLA DOI Pre-print | ||
10:48 18mTalk | Automated Debugging of Datalog ProgramsDistinguished Paper OOPSLA Jiashen Wei Nanjing University, Baoyuan Luo Nanjing University, Runshuo Xie Nanjing University, Yun Qi Nanjing University, Yiyu Zhang Nanjing University, Xizao Wang Nanjing University, Xintao Niu Nanjing University, Zhiqiang Zuo Nanjing University Link to publication DOI | ||
11:06 18mTalk | Accurate Residues for Floating-Point Debugging OOPSLA DOI | ||
11:24 18mTalk | Prosecutor: Bayesian Counterfactual Fault Localization OOPSLA Sara Baradaran University of Southern California, Yifei Huang University of Southern California, Wei Le Iowa State University, Mukund Raghothaman University of Southern California DOI | ||
11:42 18mTalk | Specy: Learning Specifications for Distributed Systems from Event Traces OOPSLA Mike He Princeton University, Ankush Desai Snowflake, Aishwarya Jagarapu Amazon Web Services, Doug Terry LinkedIn, Sharad Malik Princeton University, Aarti Gupta Princeton University DOI Pre-print | ||