Path-Sensitive Atomic Commit: Local Coordination Avoidance for Distributed Transactions
Thu 25 Mar 2021 16:00 - 16:30 at Virtual Space A - Session 9 Chair(s): Ademar Aguiar
Context
Concurrent objects with asynchronous messaging are an increasingly popular way to structure highly available, high performance, large-scale software systems. To ensure data-consistency and support synchronization between objects such systems often use distributed transactions with Two-Phase Locking (2PL) for concurrency control and Two-Phase commit (2PC) as atomic commitment protocol. Inquiry In highly available, high-throughput systems, such as large banking infrastructure, however, 2PL becomes a bottleneck when objects are highly contended, when an object is queuing a lot of messages because of locking.
Approach
In this paper we introduce Path-Sensitive Atomic Commit (PSAC) to address this situation. We start from message handlers (or methods), which are decorated with pre- and post-conditions, describing their guards and effect.
Knowledge
This allows the PSAC lock mechanism to check whether the effect of two incoming messages at the same time are independent, and to avoid locking if this is the case. As a result, more messages are directly accepted or rejected, and higher overall throughput is obtained.
Grounding
We have implemented PSAC for a state machine-based DSL called Rebel, on top of a runtime based on the Akka actor framework. Our performance evaluation shows that PSAC exhibits the same scalability and latency characteristics as standard 2PL/2PC, and obtains up to 1.8 times median higher throughput in congested scenarios.
Importance
We believe PSAC is a step towards enabling organizations to build scalable distributed applications, even if their consistency requirements are not embarrassingly parallel.
Wed 24 MarDisplayed time zone: Belfast change
15:00 - 16:30 | |||
15:00 30mLive Q&A | Path-Sensitive Atomic Commit: Local Coordination Avoidance for Distributed Transactions Research Papers Tim Soethout ING Bank and Centrum Wiskunde & Informatica (CWI), Tijs van der Storm CWI & University of Groningen, Netherlands, Jurgen Vinju CWI, Netherlands DOI Media Attached | ||
15:30 30mLive Q&A | Interactive Music and Synchronous Reactive Programming Research Papers DOI Media Attached | ||
16:00 30mLive Q&A | Programming Paradigms, Turing Completeness and Computational Thinking Research Papers Greg Michaelson Heriot-Watt University DOI Media Attached |
Thu 25 MarDisplayed time zone: Belfast change
15:00 - 16:30 | |||
15:00 30mLive Q&A | Bacatá: Notebooks for DSLs, Almost for Free Research Papers Mauricio Verano Merino Technische Universiteit Eindhoven, Jurgen Vinju CWI, Netherlands, Tijs van der Storm CWI & University of Groningen, Netherlands DOI Media Attached | ||
15:30 30mLive Q&A | Prioritising Server Side Reachability via Inter-process Concolic Testing Research Papers Maarten Vandercammen Vrije Universiteit Brussel, Laurent Christophe VUB, Dario Di Nucci Tilburg University, Wolfgang De Meuter Vrije Universiteit Brussel, Coen De Roover Vrije Universiteit Brussel Link to publication DOI Media Attached | ||
16:00 30mLive Q&A | Path-Sensitive Atomic Commit: Local Coordination Avoidance for Distributed Transactions Research Papers Tim Soethout ING Bank and Centrum Wiskunde & Informatica (CWI), Tijs van der Storm CWI & University of Groningen, Netherlands, Jurgen Vinju CWI, Netherlands DOI Media Attached |