Lune

OSDI2025顶会

Deriving Semantic Checkers from Tests to Detect Silent Failures in Production Distributed Systems

Chang Lou, Dimas Shidqi Parikesit, Yujin Huang, Zhewen Yang, Senapati Diwangkara, Yuzhuo Jing, Achmad Imam Kistijantoro, Ding Yuan, Suman Nath, Peng Huang

出版方
2025年份
6被引次数
5顶会引用

摘要

Production distributed systems provide rich features, but various defects can cause a system to silently violate its semantics without explicit errors. Such failures cause serious consequences. Yet, they are extremely challenging to detect, as it requires deep domain knowledge and substantial manual efforts to write good checkers.

In this paper, we explore a novel approach that directly derives semantic checkers from system test code. We first present a large-scale study on existing system test cases. Guided by the study findings, we develop T2C, a framework that uses static and dynamic analysis to transform and generalize a test into a runtime checker. We apply T2C on four large, popular distributed systems and successfully derive tens to hundreds of checkers. These checkers detect 15 out of 20 real-world silent failures we reproduce and incur small runtime overhead. 1 public void testSessionTimeout() 2 DisconnectableZooKeeper zk = createClient(TIMEOUT); 3 zk.create("/stest", new byte[0], OPEN_ACL, EPHEMERAL); 4 zk.close(); 5 zk.disconnect(); 6 zk = createClient(TIMEOUT); 7 Assert.assertTrue(zk.exists("/stest",false) != null); 8 Thread.sleep(TIMEOUT*2); 9 Assert.assertTrue(zk.exists("/stest",false) == null); 10 zk.close(); 11

问问这篇 Paper

智能体会读完全文。

Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。

可以从这些问题问起

智能体调用

Luneget_paper_fulltext

在 Lune 里问

免费开始,无需绑卡

引用它的顶会 Paper5

问问它们各自怎么用它

它引用的顶会 Paper26

相关 Paper

黄昏的海面,两侧是细线勾勒的悬崖