Scalable omniscient debugging

被引:30
作者
Pothier, Guillaume [1 ]
Tanter, Eric [1 ]
Piquer, Jose [1 ]
机构
[1] Univ Chile, DCC, Santiago, Chile
关键词
omniscient debugging; scalability; execution traces; specialized distributed database; partial traces; interface components;
D O I
10.1145/1297105.1297067
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Omniscient debuggers make it possible to navigate backwards in time within a program execution trace, drastically improving the task of debugging complex applications. Still, they are mostly ignored in practice due to the challenges raised by the potentially huge size of the execution traces. This paper shows that omniscient debugging can be realistically realized through the use of different techniques addressing efficiency, scalability and usability. We present TOD, a portable Trace-Oriented Debugger for Java, which combines an efficient instrumentation for event generation, a specialized distributed database for scalable storage and efficient querying, support for partial traces in order to reduce the trace volume to relevant events, and innovative interface components for interactive trace navigation and analysis in the development environment. Provided a reasonable infrastructure, the performance of TOD allows a responsive debugging experience in the face of large programs.
引用
收藏
页码:535 / 551
页数:17
相关论文
共 27 条
[1]  
[Anonymous], 1988, P 1988 ACM SIGPLAN S
[2]   STORAGE AND ACCESS IN RELATIONAL DATA-BASES [J].
BLASGEN, MW ;
ESWARAN, KP .
IBM SYSTEMS JOURNAL, 1977, 16 (04) :363-377
[3]  
BOOTHE B, 2000, PLDI 00, P299
[4]  
Bruneton Eric, 2002, ADAPTABLE EXTENSIBLE
[5]  
CONSENS M, 1994, LECT NOTES COMPUTER, V819, P123
[6]   Eclipse:: A platform for intergrating development tools [J].
des Riviéres, J ;
Wiegand, J .
IBM SYSTEMS JOURNAL, 2004, 43 (02) :371-383
[7]   Opium:: an extendable trace analyzer for Prolog [J].
Ducassé, M .
JOURNAL OF LOGIC PROGRAMMING, 1999, 39 (1-3) :177-223
[8]  
Ducasse M., 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002), P504, DOI 10.1109/ICSE.1999.841040
[9]  
HAMOULHADJ A, 2002, IWPC 02, P159
[10]  
HILL CR, 1983, SIGSOFT 83, P145