2002 · 64 citations · 14 references
ComputingComputer ScienceComputer SystemsFault-tolerant ComputingFault-tolerant SystemsSchedulingError DetectionError HandlingFailure DetectionFault-tolerant SchedulingReliable System DesignSoftware Fault ToleranceDebuggingDeterministic ReplayExecution Trace AnalysisLocation Error AnalysisReplayThread Debugging
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.
14
Stefan Savage, Michael T. Burrows, Greg Nelson et al. · ACM Transactions on Computer Systems · 1997 · 1.6K citations · Full text
Bowen Alpern, C. R. Attanasio, John Barton et al. · IBM Systems Journal · 2000 · 578 citations
Isolating cause-effect chains from computer programs
Andreas Zeller · 2002 · 534 citations