Skip to main navigation Skip to search Skip to main content

Viper: A Fast Snapshot Isolation Checker

  • Northeastern University China
  • Cockroach Labs

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

13 Scopus citations

Abstract

Snapshot isolation (SI) is supported by most commercial databases and is widely used by applications. However, checking SI today—given a set of transactions, checking if they obey SI—is either slow or gives up soundness. We present viper, an SI checker that is sound, complete, and fast. Viper checks black-box databases and hence is transparent to both users and databases. To be fast, viper introduces BC-polygraphs, a new representation of transaction dependencies. A BC-polygraph is acyclic iff transactions are SI, a theorem that we prove. Viper also introduces heuristic pruning, an optimization to accelerate checking SI by leveraging common knowledge of real-world database implementations. Besides vanilla SI, viper supports major SI variants including Strong SI, Generalized SI, and Strong Session SI. Our experiments show that given the same time budget, viper improves over baselines by 15× in the workload sizes being checked.

Original languageEnglish
Title of host publicationProceedings of the 18th European Conference on Computer Systems, EuroSys 2023
PublisherAssociation for Computing Machinery, Inc
Pages654-671
Number of pages18
ISBN (Electronic)9781450394871
DOIs
StatePublished - May 8 2023
Event18th European Conference on Computer Systems, EuroSys 2023 - Rome, Italy
Duration: May 8 2023May 12 2023

Publication series

NameProceedings of the 18th European Conference on Computer Systems, EuroSys 2023

Conference

Conference18th European Conference on Computer Systems, EuroSys 2023
Country/TerritoryItaly
CityRome
Period05/8/2305/12/23

Keywords

  • Databases
  • Verification

Fingerprint

Dive into the research topics of 'Viper: A Fast Snapshot Isolation Checker'. Together they form a unique fingerprint.

Cite this