SPLASH 2021
Sun 17 - Fri 22 October 2021 Chicago, Illinois, United States
Wed 20 Oct 2021 07:40 - 07:55 at Zurich B - Distributed Programming - mirror Chair(s): Shigeru Chiba
Wed 20 Oct 2021 15:40 - 15:55 at Zurich B - Distributed Programming Chair(s): Mohsen Lesani

This paper presents a formulation of multiparty session types (MPSTs) for practical fault-tolerant distributed programming. We tackle the challenges faced by session types in the context of distributed systems involving asynchronous and concurrent partial failures – such as supporting dynamic replacement of failed parties and retrying failed protocol segments in an ongoing multiparty session – in the presence of unreliable failure detection. Key to our approach is that we develop a novel model of event-driven concurrency for multiparty sessions. Inspired by real-world practices, it enables us to unify the session-typed handling of regular I/O events with failure handling and the combination of features needed to express practical fault-tolerant protocols. Moreover, the characteristics of our model allow us to prove a global progress property for well-typed processes engaged in multiple concurrent sessions, which does not hold in traditional MPST systems.

To demonstrate its practicality, we implement our framework as a toolchain and runtime for Scala, and use it to specify and implement a session-typed version of the cluster management system of the industrial-strength Apache Spark data analytics framework. Our session-typed cluster manager composes with other vanilla Spark components to give a functioning Spark runtime; e.g., it can execute existing third-party Spark applications without code modification. A performance evaluation using the TPC-H benchmark shows our prototype implementation incurs an average overhead below $10%$.

Wed 20 Oct

Displayed time zone: Central Time (US & Canada) change

07:40 - 09:00
Distributed Programming - mirrorOOPSLA at Zurich B
Chair(s): Shigeru Chiba The University of Tokyo
07:40
15m
Talk
A Multiparty Session Typing Discipline for Fault-Tolerant Event-Driven Distributed ProgrammingVirtual
OOPSLA
Malte Viering TU Darmstadt, Raymond Hu Queen Mary University of London, Patrick Eugster USI Lugano; Purdue University, Lukasz Ziarek University at Buffalo
DOI
07:55
15m
Talk
Much ADO about Failures: A Fault-Aware Model for Compositional Verification of Strongly Consistent Distributed SystemsIn-Person
OOPSLA
Wolf Honore Yale University, Jieung Kim Yale University, Ji-Yong Shin Northeastern University, Zhong Shao Yale University
DOI
08:10
15m
Talk
Automatic Migration from Synchronous to Asynchronous JavaScript APIsIn-Person
OOPSLA
Satyajit Gokhale Northeastern University, Alexi Turcotte Northeastern University, Frank Tip Northeastern University
DOI
08:25
15m
Talk
QuickSilver: Modeling and Parameterized Verification for Distributed Agreement-Based SystemsIn-Person
OOPSLA
Nouraldin Jaber Purdue University, Christopher Wagner Purdue University, Swen Jacobs CISPA, Milind Kulkarni Purdue University, Roopsha Samanta Purdue University
DOI
08:40
20m
Live Q&A
Discussion, Questions and Answers
OOPSLA

15:40 - 17:00
Distributed ProgrammingOOPSLA at Zurich B -8h
Chair(s): Mohsen Lesani University of California at Riverside
15:40
15m
Talk
A Multiparty Session Typing Discipline for Fault-Tolerant Event-Driven Distributed ProgrammingVirtual
OOPSLA
Malte Viering TU Darmstadt, Raymond Hu Queen Mary University of London, Patrick Eugster USI Lugano; Purdue University, Lukasz Ziarek University at Buffalo
DOI
15:55
15m
Talk
Much ADO about Failures: A Fault-Aware Model for Compositional Verification of Strongly Consistent Distributed SystemsIn-Person
OOPSLA
Wolf Honore Yale University, Jieung Kim Yale University, Ji-Yong Shin Northeastern University, Zhong Shao Yale University
DOI
16:10
15m
Talk
Automatic Migration from Synchronous to Asynchronous JavaScript APIsIn-Person
OOPSLA
Satyajit Gokhale Northeastern University, Alexi Turcotte Northeastern University, Frank Tip Northeastern University
DOI
16:25
15m
Talk
QuickSilver: Modeling and Parameterized Verification for Distributed Agreement-Based SystemsIn-Person
OOPSLA
Nouraldin Jaber Purdue University, Christopher Wagner Purdue University, Swen Jacobs CISPA, Milind Kulkarni Purdue University, Roopsha Samanta Purdue University
DOI
16:40
20m
Live Q&A
Discussion, Questions and Answers
OOPSLA