2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011) (2011)
Lawrence, KS, USA
Nov. 6, 2011 to Nov. 10, 2011
Ariel Rabkin , EECS Department, UC Berkeley, California, USA
Randy Katz , EECS Department, UC Berkeley, California, USA
Complex software packages, particularly systems software, often require substantial customization before being used. Small mistakes in configuration can lead to hard-todiagnose error messages. We demonstrate how to build a map from each program point to the options that might cause an error at that point. This can aid users in troubleshooting these errors without any need to install or use additional tools. Our approach relies on static dataflow analysis, meaning all the analysis is done in advance. We evaluate our work in detail on two substantial systems, Hadoop and the JChord program analysis toolkit, using failure injection and also by using log messages as a source of labeled program points. When logs and stack traces are available, they can be incorporated into the analysis. This reduces the number of false positives by nearly a factor of four for Hadoop, at the cost of approximately one minute's work per unique query
A. Rabkin and R. Katz, "Precomputing possible configuration error diagnoses," 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011)(ASE), Lawrence, KS, USA, 2011, pp. 193-202.