1 / 14

Replay Debugging for Distributed Application

Liblog introduces a novel approach for replay debugging in distributed applications, overcoming existing tool limitations. It allows consistent replay in mixed environments without additional hardware, offering a simple, efficient solution. The shared library implementation intercepts calls to libc and back, ensuring accurate logging and replay for non-deterministic failures. Challenges and limitations are addressed, making Liblog a valuable tool for debugging complex distributed systems.

wweber
Download Presentation

Replay Debugging for Distributed Application

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Replay Debugging for Distributed Application D. Geels, G. Altekar, S. Shenker and I. Stoica Presented by: Olusanya Soyannwo

  2. Outline • Introduction • Design • Challenges • Limitations • Evaluation • Related Work • Conclusion

  3. Introduction • Goal • Find non-deterministic failures in deployed, distributed applications • Motivation • Growth of distributed applications • Limitations of existing tools • Network inconsistency • Inadequacy of simulations • Reproduction difficulty

  4. Introduction • Deterministic Replay • Remote Debugging latency • Continuous interaction • Connection problems • Continuous logging • Performance concerns • Consistent Group Replay • Multiple snapshots • Mixed Environment • Determine (non-)cooperating peers

  5. Introduction • Liblog • Provides consistent replay in mixed env. • No Additional Hardware or patches • Works on unmodified C/C++ application • Simple • Startup script • GDB interface

  6. Design • Shared Library Implementation • Intercepts calls to libc and vice versa • Less complicated • Message Tagging and Capture • Log messages • Time stamps • Central Replay • Local replay • Network bandwidth, matching h/w, data accessibility

  7. Challenges • Multi-threaded applications • P.-Shared memory • S.-Implement new scheduler • Illegal memory accesses • P.-Heap/Stack corruption • S.-Zero out memory* • TCP Limitation • Querying for non-cooperating peers • GDB uniprocess restriction

  8. Limitations • Log storage • Host Requirements • Scheduling semantics • Network overhead • Limited consistency • Completeness • Soundness

  9. Evaluation • Experiments • Dual 3.06Ghz, Pentium 4 Xeon, 512K L2 cache • 2GB of RAM, 80 GB 7500 rpm ATA/100 disk • Broadcom 1000TX gigabit Ethernet

  10. Evaluation

  11. Evaluation

  12. Evaluation

  13. Conclusion • Related Work • Liblog is similar to several others (DejaVu, Jockey, Flashback) • Useful for select applications • Needs a lot of enhancements

  14. Ideas/Issues • Useful for simulations • Restricted to none resource intensive applications. • No significant comparison • How long can logging occur for? 4MB/hr • Inadequate citations/references

More Related