Fast Verification of Strong Database Isolation (Extended Version)
By: Zhiheng Cai , Si Liu , Hengfeng Wei and more
Potential Business Impact:
Checks databases for correct data protection rules.
Strong isolation guarantees, such as serializability and snapshot isolation, are essential for maintaining data consistency and integrity in modern databases. Verifying whether a database upholds its claimed guarantees is increasingly critical, as these guarantees form a contract between the vendor and its users. However, this task is challenging, particularly in black-box settings, where only observable system behavior is available and often involves uncertain dependencies between transactions. In this paper, we present VeriStrong, a fast verifier for strong database isolation. At its core is a novel formalism called hyper-polygraphs, which compactly captures both certain and uncertain transactional dependencies in database executions. Leveraging this formalism, we develop sound and complete encodings for verifying both serializability and snapshot isolation. To achieve high efficiency, VeriStrong tailors SMT solving to the characteristics of database workloads, in contrast to prior general-purpose approaches. Our extensive evaluation across diverse benchmarks shows that VeriStrong not only significantly outperforms state-of-the-art verifiers on the workloads they support, but also scales to large, general workloads beyond their reach, while maintaining high accuracy in detecting isolation anomalies.
Similar Papers
VerIso: Verifiable Isolation Guarantees for Database Transactions
Databases
Finds hidden database mistakes before they cause problems.
Boosting End-to-End Database Isolation Checking via Mini-Transactions (Extended Version)
Databases
Finds database bugs faster and cheaper.
Vbox: Efficient Black-Box Serializability Verification
Programming Languages
Checks if computer data is safe from errors.