CLOTHO:弱一致数据库系统的有向测试生成
CLOTHO: Directed Test Generation for Weakly Consistent Database Systems
摘要:
众所周知,关系数据库应用程序很难测试和调试。数据库事务的并发执行可能会违反复杂的结构不变量,这些结构不变量约束对一个(共享)表的内容的更改如何影响另一个表的内容。简化底层的并发模型是一种方法,可以减轻理解并发访问和更新如何影响数据库状态的困难。强制所有事务的可序列化执行实现了这种简化,但它在性能上付出了巨大的代价,特别是在规模上,数据库状态通常被复制以改善延迟和可用性。为了解决这些挑战,本文提出了一种新的测试框架,用于检测(SQL)数据库支持的Java应用程序在弱一致性存储系统上执行的可串行化违规。我们体现了我们的方法在一个名为CLOTHO的工具,它结合了静态分析器和模型检查器生成抽象的执行,发现这些执行中的串行化违规,并将它们转换回适合在测试环境中部署的具体测试输入。据我们所知,CLOTHO是第一个自动化测试生成工具,用于识别Java应用程序的可序列化异常,这些应用程序将在地理复制的分布式环境中运行。一组行业标准的基准测试的实验评估表明,我们的方法的实用性。
英文摘要:
Relational database applications are notoriously difficult to test and debug. Concurrent execution of database transactions may violate complex structural invariants that constraint how changes to the contents of one (shared) table affect the contents of another. Simplifying the underlying concurrency model is one way to ameliorate the difficulty of understanding how concurrent accesses and updates can affect database state with respect to these sophisticated properties. Enforcing serializable execution of all transactions achieves this simplification, but it comes at a significant price in performance, especially at scale, where database state is often replicated to improve latency and availability. To address these challenges, this paper presents a novel testing framework for detecting serializability violations in (SQL) database-backed Java applications executing on weakly-consistent storage systems. We manifest our approach in a tool named CLOTHO, that combines a static analyzer and a model checker to generate abstract executions, discover serializability violations in these executions, and translate them back into concrete test inputs suitable for deployment in a test environment. To the best of our knowledge, CLOTHO is the first automated test generation facility for identifying serializability anomalies of Java applications intended to operate in geo-replicated distributed environments. An experimental evaluation on a set of industry-standard benchmarks demonstrates the utility of our approach.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。