Fawkes: Finding Data Durability Bugs in DBMSs via Recovered Data State Verification
Zhiyong Wu, Jie Liang, Jingzhou Fu, Wenqian Deng, Yu Jiang
摘要
Data durability is a fundamental requirement in DBMSs, ensuring that committed data remains intact despite unexpected faults such as power failures. Despite its critical importance, implementations of durability and recovery mechanisms continue to exhibit flaws, leading to severe issues(e.g., data loss, data inconsistency), which we refer to as Data Durability Bugs (DDBs). However, there is a limited understanding of the characteristics and root causes of DDBs. Furthermore, existing testing methods(e.g., Mallory) are often inadequate for detecting DDBs, particularly those that cause data loss or data inconsistency following DBMS failures.
This paper presents a comprehensive study of 43 DDBs across four widely used DBMSs. It reveals that DDBs primarily manifest as data loss, data inconsistency, log corruption, and system unavailability, often stem from flawed durability and recovery mechanisms, and are typically triggered when faults occur during filesystem or kernel-level calls. Based on these findings, we developed Fawkes, a testing framework to detect DDBs with recovered data state verification. It employs context-aware fault injection to target critical filesystem and kernel-level regions, functionality-guided fault triggering to explore untested paths, and checkpoint-based data graph verification to detect post-crash inconsistencies. We applied Fawkes to eight popular DBMSs and discovered 48 previously unknown DDBs, of which 16 have been fixed and 8 have been assigned CVE identifiers due to the severity.
• Security and privacy → Database and storage security.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
它引用的顶会 Paper17
- Testing Database Engines via Pivoted Query SynthesisManuel Rigger, Zhendong SuOSDI 2020 · 被引用 150 次
- Finding bugs in database systems via query partitioningManuel Rigger, Zhendong SuOOPSLA 2020 · 被引用 116 次
- Detecting optimization bugs in database engines via non-optimizing reference engine constructionManuel Rigger, Zhendong SuFSE 2020 · 被引用 104 次
- Automatic Detection of Performance Bugs in Database Systems using Equivalent QueriesXinyu Liu, Qi Zhou, Joy Arulraj, Alessandro OrsoICSE 2022 · 被引用 42 次
- Detecting Logic Bugs of Join Optimizations in DBMSXiu Tang, Sai Wu, Dongxiang Zhang, Feifei Li 等SIGMOD 2023 · 被引用 34 次
相关 Paper
- DDLumos: Understanding and Detecting Atomic DDL Bugs in DBMSsZhiyong Wu, Jie Liang, Jingzhou Fu, Wenqian Deng 等USENIX ATC 2025 · 被引用 2 次
- Understanding Transaction Bugs in Database SystemsZiyu Cui, Wensheng Dou, Yu Gao, Dong Wang 等ICSE 2024 · 被引用 9 次
- Simple Testing Can Expose Most Critical Transaction Bugs: Understanding and Detecting Write-Specific Serializability Violations in Database SystemsZiyu Cui, Wensheng Dou, Yu Gao, Rui Yang 等VLDB 2025 · 被引用 4 次
- DepState: Detecting Synchronization Failure Bugs in Distributed Database Management SystemsCundi Fang, Jie Liang, Zhiyong Wu, Jingzhou Fu 等ISSTA 2025
- When Amnesia Strikes: Understanding and Reproducing Data Loss Bugs with Fault InjectionMaria Ramos, João Azevedo, Kyle Kingsbury, José Pereira 等VLDB 2024 · 被引用 2 次
