We present a framework for efficient stateless model checking (SMC) of concurrent programs under five prominent models of causal consistency, CCv,CM,CC, Read Committed and Read Atomic. Our approach is based on exploring traces under the program order (po) and the reads from (rf) relations. Our SMC algorithm is provably optimal in the sense that it explores each po and rf relation exactly once. We have implemented our framework in a tool called TRANCHECKER. Experiments show that TRANCHECKER performs well in detecting anamolies in classical distributed databases benchmarks.
翻译:我们提出了一个框架,用于根据因果一致性的五种突出模式,即CCV、CM、CC、Read Adriend and Read Atoron,对同时执行的方案进行有效的无国籍模式检查。我们的方法是基于探索程序命令(po)和(rf)关系中的痕迹。我们的SMC算法可以认为是最佳的,因为它精确地探索了每一波和rf关系一次。我们用一个称为TRANCHECCKER的工具实施了我们的框架。实验显示TRANCHECKER在发现传统分布式数据库基准的通货性方面表现良好。