# Bringing Back-in-Time Debugging Down to the Database

**Authors:** Arian Treffer, Michael Perscheid, Matthias Uflacker

arXiv: 1701.05327 · 2017-01-20

## TL;DR

This paper introduces TARDISP, a back-in-time debugger for SAP HANA databases that enables developers to step queries backwards and inspect past database states efficiently, addressing a gap in database-level debugging tools.

## Contribution

The paper presents a novel back-in-time debugging approach for databases, including a SQL extension and implementation for SAP HANA, enabling temporal query inspection with low overhead.

## Key findings

- Effective backward stepping in SAP HANA demonstrated
- Low performance and memory overhead achieved
- Positive developer feedback from SAP project evaluation

## Abstract

With back-in-time debuggers, developers can explore what happened before observable failures by following infection chains back to their root causes. While there are several such debuggers for object-oriented programming languages, we do not know of any back-in-time capabilities at the database-level. Thus, if failures are caused by SQL scripts or stored procedures, developers have difficulties in understanding their unexpected behavior.   In this paper, we present an approach for bringing back-in-time debugging down to the SAP HANA in-memory database. Our TARDISP debugger allows developers to step queries backwards and inspecting the database at previous and arbitrary points in time. With the help of a SQL extension, we can express queries covering a period of execution time within a debugging session and handle large amounts of data with low overhead on performance and memory. The entire approach has been evaluated within a development project at SAP and shows promising results with respect to the gathered developer feedback.

## Figures

1 figure with captions in the complete paper: https://tomesphere.com/paper/1701.05327/full.md

---
Source: https://tomesphere.com/paper/1701.05327