Authors
Timo Kersten, Thomas Neumann
Publication date
2020/6/19
Book
Proceedings of the workshop on Testing Database Systems
Pages
1-6
Description
Compilation-based query engines generate and compile code at runtime, which is then run to get the query result. In this process there are two levels of source code involved: The code of the code generator itself and the code that is generated at runtime. This can make debugging quite indirect, as a fault in the generated code was caused by an error in the generator. To find the error, we have to look at both, the generated code and the code that generated it. Current debugging technology is not equipped to handle this situation. For example, GNU's gdb only offers facilities to inspect one source line, but not multiple source levels. Also, current debuggers are not able to reconstruct additional program state for further source levels, thus, context is missing during debugging. In this paper, we show how to build a multi-level debugger for generated queries that solves these issues.We propose to use a timetravelling …
Total citations
20212022202320243313
Scholar articles
T Kersten, T Neumann - Proceedings of the workshop on Testing Database …, 2020