An Evolutionary Study of Configuration Design and Implementation in Cloud Systems
Yuanliang Zhang, Haochen He, Owolabi Legunsen, Shanshan Li, Wei Dong, Tianyin Xu
Abstract
Many techniques were proposed for detecting software misconfigurations in cloud systems and for diagnosing unintended behavior caused by such misconfigurations. Detection and diagnosis are steps in the right direction: misconfigurations cause many costly failures and severe performance issues. But, we argue that continued focus on detection and diagnosis is symptomatic of a more serious problem: configuration design and implementation are not yet first-class software engineering endeavors in cloud systems. Little is known about how and why developers evolve configuration design and implementation, and the challenges that they face in doing so. This paper presents a source-code level study of the evolution of configuration design and implementation in cloud systems. Our goal is to understand the rationale and developer practices for revising initial configuration design/implementation decisions, especially in response to consequences of misconfigurations. To this end, we studied 1178 configuration-related commits from a 2.5 year version-control history of four large-scale, actively-maintained open-source cloud systems (HDFS, HBase, Spark, and Cassandra). We derive new insights into the software configuration engineering process. Our results motivate new techniques for proactively reducing misconfigurations by improving the configuration design and implementation process in cloud systems. We highlight a number of future research directions.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers11
- Unicorn: reasoning about configurable system performance through the lens of causalityMd Shahriar Iqbal, Rahul Krishna, Mohammad Ali Javidian, Baishakhi Ray et al.EuroSys 2022 · 60 citations
- Test-case prioritization for configuration testingRunxiang Cheng, Lingming Zhang, Darko Marinov, Tianyin XuISSTA 2021 · 34 citations
- Characterizing and Detecting Configuration Compatibility Issues in Android AppsHuaxun Huang, Ming Wen, Lili Wei, Yepang Liu et al.ASE 2021 · 15 citations
- ConfTainter: Static Taint Analysis For Configuration OptionsTeng Wang, Haochen He, Xiaodong Liu, Shanshan Li et al.ASE 2023 · 12 citations
- Understanding and Detecting On-The-Fly Configuration BugsTeng Wang, Zhouyang Jia, Shanshan Li, Si Zheng et al.ICSE 2023 · 12 citations
Builds on8
- Rex: Preventing Bugs and Misconfiguration in Large Services Using Correlated Change AnalysisSonu Mehta, Ranjita Bhagwan, Rahul Kumar, Chetan Bansal et al.NSDI 2020 · 65 citations
- Testing Configuration Changes in Context to Prevent Production FailuresXudong Sun, Runxiang Cheng, Jianyan Chen, Elaine Ang et al.OSDI 2020 · 61 citations
- Understanding and discovering software configuration dependencies in cloud and datacenter systemsQingrong Chen, Teng Wang, Owolabi Legunsen, Shanshan Li et al.FSE 2020 · 54 citations
- Towards Continuous Access Control Validation and ForensicsChengcheng Xiang, Yudong Wu, Bingyu Shen, Mingyao Shen et al.CCS 2019 · 48 citations
- CPC: automatically classifying and propagating natural language comments via program analysisJuan Zhai, Xiangzhe Xu, Yu Shi, Guanhong Tao et al.ICSE 2020 · 39 citations
Related papers
- IoPV: On Inconsistent Option Performance VariationsJinfu Chen, Zishuo Ding, Yiming Tang, Mohammed Sayagh et al.FSE 2023 · 7 citations
- ECFuzz: Effective Configuration Fuzzing for Large-Scale SystemsJunqiang Li, Senyi Li, Keyao Li, Falin Luo et al.ICSE 2024 · 12 citations
- Understanding Misconfigurations in ROS: An Empirical Study and Current ApproachesPaulo Canelas, Bradley R. Schmerl, Alcides Fonseca, Christopher Steven TimperleyISSTA 2024 · 2 citations
- Mapping the Cloud: A Mixed-Methods Study of Cloud Security and Privacy Configuration ChallengesSumair Ijaz Hashmi, Shafay Kashif, Lea Gröber, Katharina Krombholz et al.NDSS 2026 · 3 citations
- Identifying Software Performance Changes Across Variants and VersionsStefan Mühlbauer, Sven Apel, Norbert SiegmundASE 2020 · 25 citations
