非事务型分布式存储系统一致性检查的泛化与加速
Generalizing and accelerating consistency checking for non-transactional distributed storage systems
浏览论文内容
中文总结 AI 辅助
本文泛化WG算法实现了分布式存储系统一致性检查的通用性,可检查Zookeeper等的一致性保证,实验显示该方法速度最高提升370倍,还发现5个现有工具无法检测的新一致性漏洞。
中文摘要 AI 辅助
线性izability检查器用于验证并发客户端观测到的操作历史是否具备线性一致性,广泛应用于分布式存储系统的测试中,其核心采用经典的Wing-Gong(WG)线性一致性检查算法。本文对WG算法进行泛化,使线性一致性检查器具备更强的通用性:可检查其他非事务型一致性保证,如Zookeeper提供的有序顺序一致性;借助该泛化能力,还可根据系统规范检查对操作历史引入额外排序约束的系统特定一致性保证。针对8个分布式存储系统的实验表明,检查系统特定一致性保证易于实现,可降低测试中的误报,帮助调试一致性违规,速度最高提升370倍,且能在相同检查时间预算内支持更多并发客户端。本文共发现6个新的一致性违规漏洞,其中5个无法通过现有一致性检查器检测到。
英文摘要
Linearizability checkers check if an operation history, observed by concurrent clients, is linearizable. They are used in testing distributed storage systems, and use the classic Wing-Gong (WG) linearizability checking algorithm. In this paper, we generalize the WG algorithm to make linearizability checkers more versatile: we can check other non-transactional consistency guarantees, like ordered sequential consistency provided by Zookeeper. Equipped with this generalization, we can also check for system-specific consistency guarantees that introduce additional ordering constraints over operations in a history, as per the system's specification. Our experiments with 8 distributed storage systems show that checking for system-specific consistency guarantees is easy to realize, reduces false negatives in testing, helps debug consistency violations, can be up to 370x faster, and can scale to more concurrent clients within the same checking time budget. We report 6 new consistency violation bugs, out of which 5 could not be found with existing consistency checkers.