Practical Object-Oriented Back-in-Time Debugging

Lienhard, Adrian; Gîrba, Tudor; Nierstrasz, Oscar (2008). Practical Object-Oriented Back-in-Time Debugging. In: Vitek, Jan (ed.) ECOOP 2008 - Object-Oriented Programming. 22nd European Conference, Paphos, Cyprus, July 7-11, 2008. Proceedings. Lecture Notes in Computer Science: Vol. 5142 (pp. 592-615). Heidelberg: Springer Verlag 10.1007/978-3-540-70592-5_25

Full text not available from this repository. (Request a copy)

Back-in-time debuggers are extremely useful tools for identifying the causes of bugs, as they allow us to inspect the past states of objects no longer present in the current execution stack. Unfortunately the "omniscient" approaches that try to remember all previous states are impractical because they either consume too much space or they are far too slow. Several approaches rely on heuristics to limit these penalties, but they ultimately end up throwing out too much relevant information. In this paper we propose a practical approach to back-in-time debugging that attempts to keep track of only the relevant past data. In contrast to other approaches, we keep object history information together with the regular objects in the application memory. Although seemingly counter-intuitive, this approach has the effect that past data that is not reachable from current application objects (and hence, no longer relevant) is automatically garbage collected. In this paper we describe the technical details of our approach, and we present benchmarks that demonstrate that memory consumption stays within practical bounds. Furthermore since our approach works at the virtual machine level, the performance penalty is significantly better than with other approaches.

Item Type: Book Section (Book Chapter)
Division/Institute: 08 Faculty of Science > Institute of Computer Science (INF)
UniBE Contributor: Lienhard, Adrian; Girba, Tudor Adrian and Nierstrasz, Oscar Marius
Series: Lecture Notes in Computer Science
Publisher: Springer Verlag
Language: English
Submitter: Factscience Import
Date Deposited: 04 Oct 2013 15:22
Last Modified: 04 May 2014 23:27
Publisher DOI: 10.1007/978-3-540-70592-5_25
Web of Science ID: 000257925100024
Additional Information: ECOOP distinguished paper award
URI: http://boris.unibe.ch/id/eprint/37138 (FactScience: 206796)

Actions (login required)

Edit item Edit item
Provide Feedback