Skip to main content

Advertisement

SpringerLink
Log in
Menu
Find a journal Publish with us
Search
Cart
Book cover

European Symposium on Programming

ESOP 2012: Programming Languages and Systems pp 67–86Cite as

  1. Home
  2. Programming Languages and Systems
  3. Conference paper
Eventually Consistent Transactions

Eventually Consistent Transactions

  • Sebastian Burckhardt17,
  • Daan Leijen17,
  • Manuel Fähndrich17 &
  • …
  • Mooly Sagiv18 
  • Conference paper
  • 1746 Accesses

  • 40 Citations

Part of the Lecture Notes in Computer Science book series (LNPSE,volume 7211)

Abstract

When distributed clients query or update shared data, eventual consistency can provide better availability than strong consistency models. However, programming and implementing such systems can be difficult unless we establish a reasonable consistency model, i.e. some minimal guarantees that programmers can understand and systems can provide effectively.

To this end, we propose a novel consistency model based on eventually consistent transactions. Unlike serializable transactions, eventually consistent transactions are ordered by two order relations (visibility and arbitration) rather than a single order relation. To demonstrate that eventually consistent transactions can be effectively implemented, we establish a handful of simple operational rules for managing replicas, versions and updates, based on graphs called revision diagrams. We prove that these rules are sufficient to guarantee correct implementation of eventually consistent transactions. Finally, we present two operational models (single server and server pool) of systems that provide eventually consistent transactions.

Keywords

  • Partial Order
  • Eventual Consistency
  • Single Server
  • Consistency Model
  • Transactional Memory

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Download conference paper PDF

References

  1. Abadi, M., Birrell, A., Harris, T., Isard, M.: Semantics of transactional memory and automatic mutual exclusion. In: Principles of Programming Languages, POPL (2008)

    Google Scholar 

  2. Burckhardt, S., Baldassin, A., Leijen, D.: Concurrent programming with revisions and isolation types. In: Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA (2010)

    Google Scholar 

  3. Burckhardt, S., Leijen, D., Fähndrich, M.: Roll forward, not back: A case for deterministic conflict resolution. In: Workshop on Determinism and Correctness in Parallel Progr. (2011)

    Google Scholar 

  4. Burckhardt, S., Leijen, D., Fähndrich, M., Sagiv, M.: Eventually consistent transactions (full version). Technical Report MSR-TR-2011-117, Microsoft (2011)

    Google Scholar 

  5. Burckhardt, S., Leijen, D., Yi, J., Sadowski, C., Ball, T.: Two for the price of one: A model for parallel and incremental computation (distinguished paper award). In: Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA (2011)

    Google Scholar 

  6. Burckhardt, S., Leijen, D.: Semantics of Concurrent Revisions. In: Barthe, G. (ed.) ESOP 2011. LNCS, vol. 6602, pp. 116–135. Springer, Heidelberg (2011); Full version as Microsoft Technical Report MSR-TR-2010-94

    CrossRef  Google Scholar 

  7. Decandia, G., Hastorun, D., Jampani, M., Kakulapati, G., Lakshman, A., Pilchin, A., Sivasubramanian, S., Vosshall, P., Vogels, W.: Dynamo: amazon’s highly available key-value store. In: Symposium on Operating Systems Principles, pp. 205–220 (2007)

    Google Scholar 

  8. Fekete, A., Liarokapis, D., O’Neil, E., O’Neil, P., Shasha, D.: Making snapshot isolation serializable. ACM Trans. Database Syst. 30(2), 492–528 (2005)

    CrossRef  Google Scholar 

  9. Gilbert, S., Lynch, N.: Brewer’s conjecture and the feasibility of consistent, available, partition-tolerant web services. SIGACT News 33, 51–59 (2002)

    CrossRef  Google Scholar 

  10. Gray, J., Helland, P., O’Neil, P., Shasha, D.: The dangers of replication and a solution. Sigmod Record 25, 173–182 (1996)

    CrossRef  Google Scholar 

  11. Herlihy, M., Koskinen, E.: Transactional boosting: a methodology for highly-concurrent transactional objects. In: Principles and Practice of Parallel Programming, PPoPP (2008)

    Google Scholar 

  12. Imine, A., Rusinowitch, M., Oster, G., Molli, P.: Formal design and verification of operational transformation algorithms for copies convergence. Theoretical Computer Science 351, 167–183 (2006)

    CrossRef  MathSciNet  MATH  Google Scholar 

  13. Kaplan, H.: Persistent data structures. In: Handbook on Data Structures and Applications, pp. 241–246. CRC Press (1995)

    Google Scholar 

  14. Koskinen, E., Parkinson, M., Herlihy, M.: Coarse-grained transactions. In: Principles of Programming Languages, POPL (2010)

    Google Scholar 

  15. Petersen, K., Spreitzer, M., Terry, D., Theimer, M., Demers, A.: Flexible update propagation for weakly consistent replication. Operating Systems Review 31, 288–301 (1997)

    CrossRef  Google Scholar 

  16. Saito, Y., Shapiro, M.: Optimistic replication. ACM Computing Surveys 37, 42–81 (2005)

    CrossRef  Google Scholar 

  17. Shapiro, M., Kemme, B.: Eventual consistency. In: Encyclopedia of Database Systems, pp. 1071–1072 (2009)

    Google Scholar 

  18. Shapiro, M., Preguia, N., Baquero, C., Zawirski, M.: Conflict-free replicated data types (2011)

    Google Scholar 

  19. Sun, C., Ellis, C.: Operational transformation in real-time group editors: issues, algorithms, and achievements. In: Conference on Computer Supported Cooperative Work, pp. 59–68 (1998)

    Google Scholar 

  20. Terry, D., Theimer, M., Petersen, K., Demers, A., Spreitzer, M., Hauser, C.: Managing update conflicts in bayou, a weakly connected replicated storage system. SIGOPS Oper. Syst. Rev. 29, 172–182 (1995)

    CrossRef  Google Scholar 

  21. Valdes, J., Tarjan, R., Lawler, E.: The recognition of series parallel digraphs. In: ACM Symposium on Theory of Computing, pp. 1–12 (1979)

    Google Scholar 

Download references

Author information

Authors and Affiliations

  1. Microsoft Research, USA

    Sebastian Burckhardt, Daan Leijen & Manuel Fähndrich

  2. Tel-Aviv University, Israel

    Mooly Sagiv

Authors
  1. Sebastian Burckhardt
    View author publications

    You can also search for this author in PubMed Google Scholar

  2. Daan Leijen
    View author publications

    You can also search for this author in PubMed Google Scholar

  3. Manuel Fähndrich
    View author publications

    You can also search for this author in PubMed Google Scholar

  4. Mooly Sagiv
    View author publications

    You can also search for this author in PubMed Google Scholar

Editor information

Editors and Affiliations

  1. Technische Universität München, Boltzmannstrasse 3, 85748, Garching, Germany

    Helmut Seidl

Rights and permissions

Reprints and Permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Burckhardt, S., Leijen, D., Fähndrich, M., Sagiv, M. (2012). Eventually Consistent Transactions. In: Seidl, H. (eds) Programming Languages and Systems. ESOP 2012. Lecture Notes in Computer Science, vol 7211. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-28869-2_4

Download citation

  • .RIS
  • .ENW
  • .BIB
  • DOI: https://doi.org/10.1007/978-3-642-28869-2_4

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-28868-5

  • Online ISBN: 978-3-642-28869-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Share this paper

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

Search

Navigation

  • Find a journal
  • Publish with us

Discover content

  • Journals A-Z
  • Books A-Z

Publish with us

  • Publish your research
  • Open access publishing

Products and services

  • Our products
  • Librarians
  • Societies
  • Partners and advertisers

Our imprints

  • Springer
  • Nature Portfolio
  • BMC
  • Palgrave Macmillan
  • Apress
  • Your US state privacy rights
  • Accessibility statement
  • Terms and conditions
  • Privacy policy
  • Help and support

167.114.118.210

Not affiliated

Springer Nature

© 2023 Springer Nature