Understanding and Detecting On-The-Fly Configuration Bugs
Teng Wang, Zhouyang Jia, Shanshan Li, Si Zheng, Yue Yu, Erci Xu, Shaoliang Peng, Xiangke Liao
摘要
Software systems introduce an increasing number of configuration options to provide flexibility, and support updating the options on the fly to provide persistent services. This mechanism, however, may affect the system reliability, leading to unexpected results like software crashes or functional errors. In this paper, we refer to the bugs caused by on-the-fly configuration updates as on-the-fly configuration bugs, or OCBugs for short. In this paper, we conducted the first in-depth study on 75 real-world OCBugs from 5 widely used systems to understand the symptoms, root causes, and triggering conditions of OCBugs. Based on our study, we designed and implemented PARACHUTE, an automated testing framework to detect OCBugs. Our key insight is that the value of one configuration option, either loaded at the startup phase or updated on the fly, should have the same effects on the target program. PARACHUTE generates tests for onthe-fly configuration updates by mutating the existing tests and conducts differential analysis to identify OCBugs. We evaluated PARACHUTE on 7 real-world software systems. The results show that PARACHUTE detected 75% (42/56) of the known OCBugs, and reported 13 unknown bugs, 11 of which have been confirmed or fixed by developers until the time of writing. Index Terms-on-the-fly configuration updates, bug detection, metamorphic testing ‡ Teng Wang and Zhouyang Jia are co-first authors. * Shanshan Li is the corresponding author. MySQL Bug #28808 log_queries_not_using_indexes dynamic change is ignored Description: The option log_queries_not_using_index can be changed during system running. But it does not change server behavior. Reproduction: 1. Start server with the configuration slow_query_log True log_queries_not_using_indexes False. 2. Update the option: set global log_queries_not_using_indexes=True; 3. Execute operations: CREATE TABLE, INSERT, SELECT. 4. Check slow query log. Patch: sql/mysqld.cc 1 static void get_options(int argc) 2if (opt_log_queries_not_using_indexes) 3 -opt_specialflag |= NO_INDEX; sql/sql_parse.cc 4 void log_slow_statement(THD *thd) 5 if (thd->enable_slow_log && 6 -(opt_specialflag & NO_INDEX) 7 + opt_log_queries_not_using_indexes
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper5
- When Database Meets New Storage Devices: Understanding and Exposing Performance Mismatches via ConfigurationsHaochen He, Erci Xu, Shanshan Li, Zhouyang Jia 等VLDB 2023 · 被引用 17 次
- ConfTainter: Static Taint Analysis For Configuration OptionsTeng Wang, Haochen He, Xiaodong Liu, Shanshan Li 等ASE 2023 · 被引用 12 次
- Large Language Models as Configuration ValidatorsXinyu Lian, Yinfang Chen, Runxiang Cheng, Jie Huang 等ICSE 2025 · 被引用 7 次
- Faster Configuration Performance Bug Testing with Neural Dual-Level PrioritizationYoupeng Ma, Tao Chen, Ke LiICSE 2025 · 被引用 4 次
- ConfLogger: Enhance Systems' Configuration Diagnosability through Configuration LoggingShiwen Shan, Yintong Huo, Yuxin Su, Zhining Wang 等ICSE 2026
它引用的顶会 Paper15
- Directed Greybox FuzzingMarcel Böhme, Van-Thuan Pham, Manh-Dung Nguyen, Abhik RoychoudhuryCCS 2017 · 被引用 836 次
- Razzer: Finding Kernel Race Bugs through FuzzingDae R. Jeong, Kyungtae Kim, Basavesh Shivakumar, Byoungyoung Lee 等S&P 2019 · 被引用 202 次
- The Use of Likely Invariants as Feedback for FuzzersAndrea Fioraldi, Daniele Cono D'Elia, Davide BalzarottiUSENIX Security 2021 · 被引用 67 次
- Testing Configuration Changes in Context to Prevent Production FailuresXudong Sun, Runxiang Cheng, Jianyan Chen, Elaine Ang 等OSDI 2020 · 被引用 61 次
- HEALER: Relation Learning Guided Kernel FuzzingHao Sun, Yuheng Shen, Cong Wang, Jianzhong Liu 等SOSP 2021 · 被引用 59 次
相关 Paper
- Mozi: Discovering DBMS Bugs via Configuration-Based Equivalent TransformationJie Liang, Zhiyong Wu, Jingzhou Fu, Mingzhe Wang 等ICSE 2024 · 被引用 18 次
- CP-Detector: Using Configuration-related Performance Properties to Expose Performance BugsHaochen He, Zhouyang Jia, Shanshan Li, Erci Xu 等ASE 2020 · 被引用 14 次
- ECFuzz: Effective Configuration Fuzzing for Large-Scale SystemsJunqiang Li, Senyi Li, Keyao Li, Falin Luo 等ICSE 2024 · 被引用 12 次
- Detecting Metadata-Related Logic Bugs in Database Systems via Raw Database ConstructionJiansen Song, Wensheng Dou, Yu Gao, Ziyu Cui 等VLDB 2024 · 被引用 13 次
- Test-case prioritization for configuration testingRunxiang Cheng, Lingming Zhang, Darko Marinov, Tianyin XuISSTA 2021 · 被引用 34 次
