一句话:将 time-of-fault bug 建模为新型并发 bug,并提出 FCatch 通过观察正确执行自动预测分布式系统缺陷。
分布式系统的高可用性常因组件故障而受到威胁。开发者难以预见故障可能发生的所有时序条件与系统状态,从而引入 time-of-fault (TOF) bug——仅在节点崩溃或消息丢失的特定时刻才暴露。检测 TOF bug 对构建高可用分布式系统至关重要,但已有工作主要依赖故障注入来触发它们。本文另辟蹊径,将 TOF bug 精确建模为一类新的并发 bug,并实现工具 FCatch,通过观察系统的正确执行来自动预测 TOF bug。在若干代表性云系统上的评估表明,FCatch 能够有效且准确地发现严重的 TOF bug。
It is crucial for distributed systems to achieve high availability. Unfortunately, this is challenging given the common component failures (i.e., faults). Developers often cannot anticipate all the timing conditions and system states under which a fault might occur, and introduce time-of-fault (TOF) bugs that only manifest when a node crashes or a message drops at a special moment. Although challenging, detecting TOF bugs is fundamental to developing highly available distributed systems. Unlike previous work that relies on fault injection to expose TOF bugs, this paper carefully models TOF bugs as a new type of concurrency bugs, and develops FCatch to automatically predict TOF bugs by observing correct execution. Evaluation on representative cloud systems shows that FCatch is effective, accurately finding severe TOF bugs.
DOI 原文 ·
@inproceedings{paperbot4287,
title = {FCatch},
author = {Haopeng Liu and Xu Wang and Guangpu Li and Shan Lu and Feng Ye and Chen Tian},
booktitle = {ASPLOS},
year = {2018},
doi = {10.1145/3173162.3177161}
}