Execution Reconstruction: Harnessing Failure Reoccurrences for Failure Reproduction
Fri 25 Jun 2021 21:05 - 21:10 at PLDI-B - Talks 5B: Defect Detection and Repair
Reproducing production failures is crucial for software reliability. Alas, existing bug reproduction approaches are not suitable for production systems because they are not simultaneously efficient, effective, and accurate. In this work, we survey prior techniques and show that existing approaches over-prioritize a subset of these properties, and sacrifice the remaining ones. As a result, existing tools do not enable the plethora of proposed failure reproduction use-cases (e.g., debugging, security forensics, fuzzing) for production failures.
We propose Execution Reconstruction (ER), a technique that strikes a better balance between efficiency, effectiveness and accuracy for reproducing production failures. ER uses hardware-assisted control and data tracing to shepherd symbolic execution and reproduce failures. ER’s key novelty lies in identifying data values that are both inexpensive to monitor and useful for eliding the scalability limitations of symbolic execution. ER harnesses failure reoccurrences by iteratively performing tracing and symbolic execution, which reduces runtime overhead. Whereas prior production-grade techniques can only reproduce short executions, ER can reproduce any reoccuring failure. Thus, unlike existing tools, ER reproduces fully replayable executions that can power a variety of debugging and reliabilty use cases. ER incurs on average 0.3% (up to 1.1%) runtime monitoring overhead for a broad range of real-world systems, making it practical for real-world deployment.
Fri 25 JunDisplayed time zone: Eastern Time (US & Canada) change
09:00 - 09:40 | |||
09:00 5mTalk | Test-Case Reduction and Deduplication Almost for Free with Transformation-Based Compiler Testing PLDI Alastair F. Donaldson Imperial College London, Paul Thomson Google, Vasyl Teliman National Technical University of Ukraine, Stefano Milizia Imperial College London, André Perez Maselco Federal University of ABC, Antoni Karpiński Warsaw University of Technology DOI | ||
09:05 5mTalk | Execution Reconstruction: Harnessing Failure Reoccurrences for Failure Reproduction PLDI Gefei Zuo University of Michigan, Jiacheng Ma University of Michigan, Andrew Quinn University of Michigan, Pramod Bhatotia TU Munich, Pedro Fonseca Purdue University, Baris Kasikci University of Michigan DOI | ||
09:10 5mTalk | Concolic Program Repair PLDI Ridwan Salihin Shariffdeen National University of Singapore, Yannic Noller National University of Singapore, Lars Grunske Humboldt University of Berlin, Abhik Roychoudhury National University of Singapore DOI Pre-print | ||
09:15 5mTalk | Automated Conformance Testing for JavaScript Engines via Deep Compiler Fuzzing PLDI Guixin Ye Northwest University, Zhanyong Tang Northwest University, Shin Hwei Tan Southern University of Science and Technology, Dingyi Fang Northwest University, Xiaoyang Sun University of Leeds, Lizhong Bian Alipay, Songfang Huang Alibaba DAMO Academy, Haibo Wang University of Leeds, Zheng Wang University of Leeds, UK DOI | ||
09:20 5mTalk | Path-Sensitive Sparse Analysis without Path Conditions PLDI Qingkai Shi Hong Kong University of Science and Technology, Peisen Yao Hong Kong University of Science and Technology, Rongxin Wu Xiamen University, Charles Zhang Hong Kong University of Science and Technology DOI | ||
09:25 5mTalk | Repairing Serializability Bugs in Distributed Database Programs via Automated Schema Refactoring PLDI Kia Rahmani Purdue University, Kartik Nagar IIT Madras, Benjamin Delaware Purdue University, Suresh Jagannathan Purdue University DOI | ||
09:30 5mTalk | SyRust: Automatic Testing of Rust Libraries with Semantic-Aware Program Synthesis PLDI Yoshiki Takashima Carnegie Mellon University, Ruben Martins Carnegie Mellon University, Limin Jia Carnegie Mellon University, Corina S. Păsăreanu Carnegie Mellon University DOI | ||
09:35 5mTalk | When Threads Meet Events: Efficient and Precise Static Race Detection with Origins PLDI Bozhen Liu Texas A&M University, Peiming Liu Texas A&M University, Yanze Li Texas A&M University, Chia-Che Tsai Texas A&M University, Dilma Da Silva Texas A&M University, Jeff Huang Texas A&M University DOI |
21:00 - 21:40 | |||
21:00 5mTalk | Test-Case Reduction and Deduplication Almost for Free with Transformation-Based Compiler Testing PLDI Alastair F. Donaldson Imperial College London, Paul Thomson Google, Vasyl Teliman National Technical University of Ukraine, Stefano Milizia Imperial College London, André Perez Maselco Federal University of ABC, Antoni Karpiński Warsaw University of Technology DOI | ||
21:05 5mTalk | Execution Reconstruction: Harnessing Failure Reoccurrences for Failure Reproduction PLDI Gefei Zuo University of Michigan, Jiacheng Ma University of Michigan, Andrew Quinn University of Michigan, Pramod Bhatotia TU Munich, Pedro Fonseca Purdue University, Baris Kasikci University of Michigan DOI | ||
21:10 5mTalk | Concolic Program Repair PLDI Ridwan Salihin Shariffdeen National University of Singapore, Yannic Noller National University of Singapore, Lars Grunske Humboldt University of Berlin, Abhik Roychoudhury National University of Singapore DOI Pre-print | ||
21:15 5mTalk | Automated Conformance Testing for JavaScript Engines via Deep Compiler Fuzzing PLDI Guixin Ye Northwest University, Zhanyong Tang Northwest University, Shin Hwei Tan Southern University of Science and Technology, Dingyi Fang Northwest University, Xiaoyang Sun University of Leeds, Lizhong Bian Alipay, Songfang Huang Alibaba DAMO Academy, Haibo Wang University of Leeds, Zheng Wang University of Leeds, UK DOI | ||
21:20 5mTalk | Path-Sensitive Sparse Analysis without Path Conditions PLDI Qingkai Shi Hong Kong University of Science and Technology, Peisen Yao Hong Kong University of Science and Technology, Rongxin Wu Xiamen University, Charles Zhang Hong Kong University of Science and Technology DOI | ||
21:25 5mTalk | Repairing Serializability Bugs in Distributed Database Programs via Automated Schema Refactoring PLDI Kia Rahmani Purdue University, Kartik Nagar IIT Madras, Benjamin Delaware Purdue University, Suresh Jagannathan Purdue University DOI | ||
21:30 5mTalk | SyRust: Automatic Testing of Rust Libraries with Semantic-Aware Program Synthesis PLDI Yoshiki Takashima Carnegie Mellon University, Ruben Martins Carnegie Mellon University, Limin Jia Carnegie Mellon University, Corina S. Păsăreanu Carnegie Mellon University DOI | ||
21:35 5mTalk | When Threads Meet Events: Efficient and Precise Static Race Detection with Origins PLDI Bozhen Liu Texas A&M University, Peiming Liu Texas A&M University, Yanze Li Texas A&M University, Chia-Che Tsai Texas A&M University, Dilma Da Silva Texas A&M University, Jeff Huang Texas A&M University DOI |