Fast and Precise On-the-fly Patch Validation for AllTechnical Track
Fri 28 May 2021 03:45 - 04:05 at Blended Sessions Room 3 - 3.3.3. Program Repair: Automated Patching
Generate-and-validate (G&V) automated program repair (APR) techniques have been extensively studied during the past decade. Meanwhile, such techniques can be extremely time-consuming due to the manipulation of program code to fabricate a large number of patches and also the repeated executions of tests on patches to identify potential fixes. PraPR, a recent G&V APR technique, reduces such costs by modifying program code directly at the level of compiled JVM bytecode with on-the-fly patch validation, which directly allows multiple bytecode patches to be tested within the same JVM process. However, PraPR is limited due to its bytecode repair design and it is basically unsound/imprecise as it assumes that patch executions do not change global JVM state and affect later patch executions on the same JVM process. In this paper, we propose a unified patch validation framework, named UniAPR, to perform the first empirical study of on-the-fly patch validation for state-of-the-art source-code-level APR techniques (in fact, almost all G&V APR techniques except PraPR fix at the source-code level); furthermore, UniAPR addresses the imprecise patch validation issue by resetting the JVM global state via runtime bytecode transformation. We have implemented UniAPR as a publicly available fully automated Maven Plugin. Our study demonstrates for the first time that on-the-fly patch validation can often speed up state-of-the-art source-code-level APR by over an order of magnitude, enabling all existing APR techniques to explore a larger search space to fix more bugs in the near future. Furthermore, our study shows the first empirical evidence that vanilla on-the-fly patch validation can be imprecise/unsound, while UniAPR with JVM reset is able to mitigate such issues with negligible overhead.
Thu 27 MayDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
15:05 - 16:05 | 3.3.3. Program Repair: Automated PatchingTechnical Track / Journal-First Papers at Blended Sessions Room 3 +12h Chair(s): Antonia Bertolino CNR-ISTI | ||
15:05 20mPaper | Automated Patch TransplantationJournal-First Journal-First Papers Ridwan Salihin Shariffdeen National University of Singapore, Shin Hwei Tan Southern University of Science and Technology, Mingyuan Gao National University of Singapore, Abhik Roychoudhury National University of Singapore Link to publication DOI Pre-print Media Attached | ||
15:25 20mPaper | Synthesizing Object State Transformers for Dynamic Software UpdatesACM SIGSOFT Distinguished PaperACM Europe Council Best Paper AwardTechnical Track Technical Track Zelin Zhao Nanjing University, Yanyan Jiang Nanjing University, Chang Xu Nanjing University, Tianxiao Gu Alibaba Group, Xiaoxing Ma Nanjing University Pre-print Media Attached | ||
15:45 20mPaper | Fast and Precise On-the-fly Patch Validation for AllTechnical Track Technical Track Pre-print Media Attached |
Fri 28 MayDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
03:05 - 04:05 | 3.3.3. Program Repair: Automated PatchingJournal-First Papers / Technical Track at Blended Sessions Room 3 | ||
03:05 20mPaper | Automated Patch TransplantationJournal-First Journal-First Papers Ridwan Salihin Shariffdeen National University of Singapore, Shin Hwei Tan Southern University of Science and Technology, Mingyuan Gao National University of Singapore, Abhik Roychoudhury National University of Singapore Link to publication DOI Pre-print Media Attached | ||
03:25 20mPaper | Synthesizing Object State Transformers for Dynamic Software UpdatesACM SIGSOFT Distinguished PaperACM Europe Council Best Paper AwardTechnical Track Technical Track Zelin Zhao Nanjing University, Yanyan Jiang Nanjing University, Chang Xu Nanjing University, Tianxiao Gu Alibaba Group, Xiaoxing Ma Nanjing University Pre-print Media Attached | ||
03:45 20mPaper | Fast and Precise On-the-fly Patch Validation for AllTechnical Track Technical Track Pre-print Media Attached |