SPLASH 2020
Sun 15 - Sat 21 November 2020 Online Conference
Tue 17 Nov 2020 15:00 - 15:20 at OOPSLA/ECOOP - T-5
Wed 18 Nov 2020 03:00 - 03:20 at OOPSLA/ECOOP - T-5

Actor concurrency is becoming increasingly important in the development of real-world software systems. Although actor concurrency may be less susceptible to some multithreaded concurrency bugs, such as low-level data races and deadlocks, it comes with its own bugs that may be different. However, the fundamental characteristics of actor concurrency bugs, including their symptoms, root causes, API usages, examples, and differences when they come from different sources are still largely unknown. Actor software development can significantly benefit from a comprehensive qualitative and quantitative understanding of these characteristics, which is the focus of this work, to foster better API documentations, development practices, testing, debugging, repairing, and verification frameworks. To conduct this study, we take the following major steps. First, we construct a set of 184 real-world Stackoverflow and Github actor bugs by manual analysis of 3,924 Stackoverflow questions, answers, and comments and 3,315 Github commits, messages, original and modified code snippets, issues, and pull requests. Second, we manually study these actor bugs and their fixes to understand and classify their symptoms, root causes, and API usages. Third, we study the differences between the commonalities and distributions of symptoms, root causes, and API usages of Stackoverflow and Github actor bugs. Fourth, we discuss real-world examples of bugs with these root causes and symptoms. Finally, we investigate the relation of our findings with the findings of previous work and discuss the implications of our findings using the anecdotal evidence of our actor bug examples. A few findings of our study are: (1) Symptoms of actor bugs can be classified into 5 categories with Error and Incorrect Exceptions being the most and least common symptoms (2) Root causes of actor bugs can be classified into 10 categories with Logic and Untyped Communication being the most and least common root causes (3) A small number of API packages are responsible for most of API usages by actor bugs (4) Stackoverflow and Github actors can differ significantly in the commonality and distribution of symptoms, root causes, and API usages (5) Actor developers may need help not only with complex, unknown, or semantic bugs in the development code but also with simple, well-known, well-documented, or syntactic bugs in the test code. While some of our findings are in agreement with the findings of the previous work, others are in sharp contrast.

Tue 17 Nov
Times are displayed in time zone: Central Time (US & Canada) change

15:00 - 16:20: T-5OOPSLA at OOPSLA/ECOOP +12h
15:00 - 15:20
Talk
OOPSLA
Mehdi BagherzadehOakland University, Nicholas FiremanOakland University, Anas ShaweshOakland University, Raffi KhatchadourianCity University of New York (CUNY) Hunter College
15:20 - 15:40
Talk
OOPSLA
Arjen RouvoetDelft University of Technology, Hendrik van AntwerpenTU Delft, Casper Bach PoulsenDelft University of Technology, Robbert KrebbersDelft University of Technology, Eelco VisserDelft University of Technology
Link to publication DOI Pre-print
15:40 - 16:00
Talk
OOPSLA
Quentin StiévenartVrije Universiteit Brussel, Belgium, Magnus MadsenAarhus University
16:00 - 16:20
Talk
OOPSLA
Lukáš HolíkBrno University of Technology, Czechia, Ondrej LengalBrno University of Technology , Olli SaarikiviMSR Redmond, Lenka TuronovaBrno University of Technology, Margus VeanesMicrosoft Research, Tomas VojnarBrno University of Technology

Wed 18 Nov
Times are displayed in time zone: Central Time (US & Canada) change

03:00 - 04:20: T-5OOPSLA at OOPSLA/ECOOP
03:00 - 03:20
Talk
OOPSLA
Mehdi BagherzadehOakland University, Nicholas FiremanOakland University, Anas ShaweshOakland University, Raffi KhatchadourianCity University of New York (CUNY) Hunter College
03:20 - 03:40
Talk
OOPSLA
Arjen RouvoetDelft University of Technology, Hendrik van AntwerpenTU Delft, Casper Bach PoulsenDelft University of Technology, Robbert KrebbersDelft University of Technology, Eelco VisserDelft University of Technology
Link to publication DOI Pre-print
03:40 - 04:00
Talk
OOPSLA
Quentin StiévenartVrije Universiteit Brussel, Belgium, Magnus MadsenAarhus University
04:00 - 04:20
Talk
OOPSLA
Lukáš HolíkBrno University of Technology, Czechia, Ondrej LengalBrno University of Technology , Olli SaarikiviMSR Redmond, Lenka TuronovaBrno University of Technology, Margus VeanesMicrosoft Research, Tomas VojnarBrno University of Technology