Root Cause Localization for Unreproducible Builds via Causality Analysis over System Call Tracing
Localization of the root cases for unreproducible builds is an important yet challenging task during software maintenance. The major challenges lie in limited runtime traces from build processes and high diversity of build environments. To address these challenges, in this paper, we propose RepTrace, a framework that identifies the root causes for unreproducible builds based on collected system call traces of the executed build commands. Our framework leverages system call tracing’s uniform interfaces for monitoring executed build commands in diverse build environments. From the collected system call traces, causality analysis included in our framework builds a dependency graph starting from an inconsistent build artifact (across two builds) via two types of dependencies: read/write dependencies among processes and parent/child process dependencies, and searches the graph to find the processes that result in the inconsistencies. To handle massive noisy dependencies and uncertain parent/child dependencies, RepTrace includes two novel techniques: (1) using difference analysis on multiple builds to reduce the search space of read/write dependencies, and (2) computing similarity of the runtime values to filter out noisy parent/child process dependencies. The evaluation results of RepTrace over a set of real-world software packages show that \tool effectively finds not only the root cause commands responsible for the unreproducible builds, but also the files to patch for addressing the unreproducible issues. Among its Top-10 identified commands and files, RepTrace achieves high accuracy of 90.00% and 90.56% in identifying the root causes, respectively.
Wed 13 NovDisplayed time zone: Tijuana, Baja California change
13:40 - 15:20 | Systems and LocalizationIndustry Showcase / Research Papers / Demonstrations at Cortez 2&3 Chair(s): Tegawendé F. Bissyandé SnT, University of Luxembourg | ||
13:40 20mTalk | Combining Spectrum-Based Fault Localization and Statistical Debugging: An Empirical Study Research Papers Jiajun Jiang Peking University, Ran Wang Peking University, Yingfei Xiong Peking University, Xiangping Chen Sun Yat-sen University, Lu Zhang Peking University Pre-print | ||
14:00 20mTalk | SCMiner: Localizing System-Level Concurrency Faults from Large System Call Traces Research Papers Tarannum Shaila Zaman University of Kentucky, Xue Han University of Kentucky, Tingting Yu University of Kentucky Pre-print File Attached | ||
14:20 20mTalk | Root Cause Localization for Unreproducible Builds via Causality Analysis over System Call Tracing Research Papers Zhilei Ren Dalian University of Technology, Changlin Liu Case Western Reserve University, Xusheng Xiao Case Western Reserve University, He Jiang School of Software, Dalian University of Technology, Tao Xie Peking University | ||
14:40 20mTalk | PTracer: A Linux Kernel Patch Trace Bot Industry Showcase | ||
15:00 10mDemonstration | Pangolin: An SFL-based Toolset for Feature Localization Demonstrations Bruno Miguel Sotto-Mayor de Castro Machado IST, University of Lisbon, Alexandre Perez Palo Alto Research Center, Rui Abreu Instituto Superior Técnico, U. Lisboa & INESC-ID | ||
15:10 10mDemonstration | SiMPOSE - Configurable N-Way Program Merging Strategies for Superimposition-based Analysis of Variant-Rich Software Demonstrations Dennis Reuling Software Engineering Group, University of Siegen, Udo Kelter Software Engineering Group, University of Siegen, Sebastian Ruland TU Darmstadt, Real-time Systems Lab, Malte Lochau TU Darmstadt Pre-print Media Attached File Attached |