Isolating Failure-Inducing Thread Schedules
- ISSTA 2002
by
Jong-Deok Choi, Andreas Zeller
ISSTA '02: Proceedings of the 2002 ACM SIGSOFT international symposium on Software testing and analysis, Pages 210-220, ACM Press, New York, NY, USA, July 2002.
ISBN: 1581135629
Digital Library via DOI: 10.1145/566172.566211 - Local copy: Download as PDF file.
See also
More information is available at http://www.st.cs.uni-saarland.de/dd/.
Abstract
Consider a multi-threaded application that occasionally fails due to non-determinism. Using the DEJAVU capture/replay tool, it is possible to record the thread schedule and replay the application in a deterministic way. By systematically narrowing down the difference between a thread schedule that makes the program pass and another schedule that makes the program fail, the Delta Debugging approach can pinpoint the error location automatically - namely, the location(s) where a thread switch causes the program to fail. In a case study, Delta Debugging isolated the failure-inducing schedule difference from 3.8 billion differences in only 50 tests.
Keywords
- debugging aids
- diagnostics
- testing tools
- tracing
- concurrent programming
BibTeX Entry
@inproceedings{choi-issta-2002, title = "Isolating Failure-Inducing Thread Schedules", author = "Jong-Deok Choi and Andreas Zeller", year = "2002", month = jul, address = "New York, NY, USA", booktitle = "ISSTA '02: Proceedings of the 2002 ACM SIGSOFT international symposium on Software testing and analysis", location = "Roma, Italy", pages = "210--220", publisher = "ACM Press", ISBN = "1581135629", doi = "10.1145/566172.566211", }