The push/pull model of transactions

Eric Koskinen, Matthew Parkinson

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

10 Scopus citations

Abstract

We present a general theory of serializability, unifying a wide range of transactional algorithms, including some that are yet to come. To this end, we provide a compact semantics in which concurrent transactions PUSH their effects into the shared view (or UNPUSH to recall effects) and PULL the effects of potentially uncommitted concurrent transactions into their local view (or UNPULL to detangle). Each operation comes with simple criteria given in terms of commutativity (Lipton's left-movers and right-movers). The benefit of this model is that most of the elaborate reasoning (coinduction, simulation, subtle invariants, etc.) necessary for proving the serializability of a transactional algorithm is already proved within the semantic model. Thus, proving serializability (or opacity) amounts simply to mapping the algorithm on to our rules, and showing that it satisfies the rules' criteria.

Original languageEnglish
Title of host publicationPLDI 2015 - Proceedings of the 36th ACM SIGPLAN Conference on Programming Language Design and Implementation
EditorsSteve Blackburn, David Grove
Pages186-195
Number of pages10
ISBN (Electronic)9781450334686
DOIs
StatePublished - 3 Jun 2015
Event36th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2015 - Portland, United States
Duration: 13 Jun 201517 Jun 2015

Publication series

NameProceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI)
Volume2015-June

Conference

Conference36th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2015
Country/TerritoryUnited States
CityPortland
Period13/06/1517/06/15

Keywords

  • Abstract data-types
  • Commutativity
  • Movers
  • Push/pull transactions
  • Transactional boosting
  • Transactional memory

Fingerprint

Dive into the research topics of 'The push/pull model of transactions'. Together they form a unique fingerprint.

Cite this