paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Dynamic Partial Order Reduction for Checking Correctness against Transaction Isolation Levels

面向事务隔离级别正确性检查的动态偏序归约
PLDI 7(PLDI)2023匹配度 3/10 · 该论文属于程序验证与并发模型检测方向,涉及动态偏序归约和事务隔离级别,与用户所在的大领域相关。但它没有涉及 LLM/Agent 与静态分析/形式化验证的交叉,也不属于浮点程序分析或贝叶斯程序分析,因此与用户当前追的核心问题关联较弱。引用 7 inbox
Ahmed Bouajjani, Constantin Enea, Enrique Román-Calvo
crossref: 2026-09-10

AI 速览

一句话:提出覆盖 Read Committed、因果一致性、快照隔离与可串行化的动态偏序归约模型检测算法,完备、可靠、最优且多项式内存。

现代大规模数据库为性能而牺牲隔离性,隔离级别越弱,数据库允许出现的行为越多,应用程序必须自行容忍这些行为,因此需要自动检查程序在弱隔离语义下是否保持正确。本文提出基于动态偏序归约(DPOR)的无状态模型检测算法,适用于 Read Committed、因果一致性、快照隔离与可串行化等多种广泛使用的隔离级别。作者证明这些算法是完备、可靠且最优的,并始终以多项式内存运行。作者在 Java Pathfinder 中实现了上述算法,并在取自分布式系统与数据库文献的多项挑战性应用上进行了实验评估。

问题
数据库应用的访问被包裹在事务中,弱隔离级别会允许大量异常行为,开发者需自行保证程序能容忍这些行为,因此需要自动、高效地检查应用程序相对于给定隔离级别的正确性。
方法
针对 Read Committed、因果一致性、快照隔离与可串行化等隔离级别,设计无状态模型检测的动态偏序归约算法,通过剪除偏序等价的执行来缓解并发执行空间的爆炸。
评估
理论上证明算法完备、可靠且最优,并保持多项式内存开销;在 Java Pathfinder 中实现后,对来自分布式系统与数据库文献的多个挑战性应用进行实验。
原文摘要(Abstract)

Modern applications, such as social networking systems and e-commerce platforms are centered around using large-scale databases for storing and retrieving data. Accesses to the database are typically enclosed in transactions that allow computations on shared data to be isolated from other concurrent computations and resilient to failures. Modern databases trade isolation for performance. The weaker the isolation level is, the more behaviors a database is allowed to exhibit and it is up to the developer to ensure that their application can tolerate those behaviors.In this work, we propose stateless model checking algorithms for studying correctness of such applications that rely on dynamic partial order reduction. These algorithms work for a number of widely-used weak isolation levels, including Read Committed, Causal Consistency, Snapshot Isolation and Serializability. We show that they are complete, sound and optimal, and run with polynomial memory consumption in all cases. We report on an implementation of these algorithms in the context of Java Pathfinder applied to a number of challenging applications drawn from the literature of distributed systems and databases.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@article{paperbot1964,
  title = {Dynamic Partial Order Reduction for Checking Correctness against Transaction Isolation Levels},
  author = {Ahmed Bouajjani and Constantin Enea and Enrique Román-Calvo},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {7},
  number = {PLDI},
  year = {2023},
  doi = {10.1145/3591243}
}