Wed 20 Jun 2018 16:35 - 17:00 at Grand Ballroom AB - Transactions and Races Chair(s): Tatiana Shpeisman

Programming concurrent, distributed systems is hard—especially when these systems mutate shared, persistent state replicated at geographic scale. To enable high availability and scalability, a new class of weakly consistent data stores has become popular. However, some data needs strong consistency. To manipulate both weakly and strongly consistent data in a single transaction, we introduce a new abstraction: mixed-consistency transactions, embodied in a new embedded language, MixT. Programmers explicitly associate consistency models with remote storage sites; each atomic, isolated transaction can access a mixture of data with different consistency models. Compile-time information-flow checking, applied to consistency models, ensures that these models are mixed safely and enables the compiler to automatically partition transactions into a single sub-transaction per consistency model. New run-time mechanisms ensure that consistency models can also be mixed safely, even when the data used by a transaction resides on separate, mutually unaware stores. Performance measurements show that despite their stronger guarantees, mixed-consistency transactions retain much of the speed of weak consistency, significantly outperforming traditional serializable transactions.

Wed 20 Jun
Times are displayed in time zone: Eastern Time (US & Canada) change

16:10 - 17:25: Transactions and RacesPLDI Research Papers at Grand Ballroom AB
Chair(s): Tatiana ShpeismanGoogle Brain
16:10 - 16:35
Talk
PLDI Research Papers
Nathan ChongARM Ltd., Tyler SorensenImperial College London, John WickersonImperial College London
Media Attached
16:35 - 17:00
Talk
PLDI Research Papers
Matthew MilanoCornell University, Andrew C. MyersCornell University
Media Attached
17:00 - 17:25
Talk
PLDI Research Papers
Stephen DolanUniversity of Cambridge, KC SivaramakrishnanUniversity of Cambridge, Anil MadhavapeddyOCaml Labs
Media Attached