Checking Robustness Between Weak Transactional Consistency Models

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

Abstract

Concurrent accesses to databases are typically encapsulated in transactions in order to enable isolation from other concurrent computations and resilience to failures. Modern databases provide transactions with various semantics corresponding to different trade-offs between consistency and availability. Since a weaker consistency model provides better performance, an important issue is investigating the weakest level of consistency needed by a given program (to satisfy its specification). As a way of dealing with this issue, we investigate the problem of checking whether a given program has the same set of behaviors when replacing a consistency model with a weaker one. This property known as robustness generally implies that any specification of the program is preserved when weakening the consistency. We focus on the robustness problem for consistency models which are weaker than standard serializability, namely, causal consistency, prefix consistency, and snapshot isolation. We show that checking robustness between these models is polynomial time reducible to a state reachability problem under serializability. We use this reduction to also derive a pragmatic proof technique based on Lipton’s reduction theory that allows to prove programs robust. We have applied our techniques to several challenging applications drawn from the literature of distributed systems and databases.

Original languageEnglish
Title of host publicationProgramming Languages and Systems - 30th European Symposium on Programming, ESOP 2021 Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2021, Proceedings
EditorsNobuko Yoshida
PublisherSpringer Science and Business Media Deutschland GmbH
Pages87-117
Number of pages31
ISBN (Print)9783030720186
DOIs
Publication statusPublished - 1 Jan 2021
Externally publishedYes
Event30th European Symposium on Programming, ESOP 2021 Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2021 - Luxembourg, Luxembourg
Duration: 27 Mar 20211 Apr 2021

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume12648 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference30th European Symposium on Programming, ESOP 2021 Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2021
Country/TerritoryLuxembourg
CityLuxembourg
Period27/03/211/04/21

Keywords

  • Program verification
  • Transactional databases
  • Weak consistency

Fingerprint

Dive into the research topics of 'Checking Robustness Between Weak Transactional Consistency Models'. Together they form a unique fingerprint.

Cite this