Cross-System Interaction Failures: Don't Fail through the Cracks
summary
Empirical study of 120 cross-system incidents and a random sample of 360 issues finds roughly 30% are CSI failures that arise only when systems interact; concrete examples include Spark failing on HDFS’s legacy size = -1 and Flink retry storms overloading YARN. Two concrete defenses appear: SE, a perturbation-based tester for Kubernetes controllers that reports 46 bugs (35 confirmed, 22 fixed) across 10 controllers, and acto, an end-to-end fuzzer that finds hundreds of bugs in 50+ controllers. A formal approach proves controller correctness via eventually stable reconciliation (ESR) and verified Rust controllers.
AI-written summary · about
chapters (8)
- 0:00Introduction
- 3:31Why failures are common
- 5:36Reliability challenges
- 11:15Testing interactions
- 14:46Controllers and system state
- 25:58Interaction between controllers and managed applications
- 31:33Multiple controllers
- 38:41Reliable cloud vision
related talks
19mCAFault: Enhance Fault Injection Technique in Practical Distributed Systems via...
18mEfficient Exposure of Partial Failure Bugs in Distributed Systems with Inferred...
31mWhat Breaks Our Systems: A Taxonomy of Black Swans
14mUnderstanding and Detecting Fail-Slow Hardware Failure Bugs in Cloud Systems
30mWhat Breaks Our Systems: A Taxonomy of Black Swans
42mJepsen 9: A Fsyncing Feeling
29mHorrors of Distributed Systems
46mFault tolerance in Distributed Systems: A Case Study in Apache Spark
