The actor model is an attractive foundation for developing concurrent applications because actors are isolated concurrent entities that communicate through asynchronous messages and do not share state. Thereby, they avoid concurrency bugs such as data races, but are not immune to concurrency bugs in general. This study taxonomizes concurrency bugs in actor-based programs reported in literature. Furthermore, it analyzes the bugs to identify the patterns causing them as well as their observable behavior. Based on this taxonomy, we further analyze the literature and find that current approaches to static analysis and testing focus on communication deadlocks and message protocol violations. However, they do not provide solutions to identify livelocks and behavioral deadlocks. The insights obtained in this study can be used to improve debugging support for actor-based programs with new debugging techniques to identify the root cause of complex concurrency bugs.

Original languageEnglish
Title of host publicationProgramming with Actors - State-of-the-Art and Research Perspectives
PublisherSpringer
Pages155-185
Number of pages31
VolumeLNCS 10789
ISBN (Electronic)978-3-030-00302-9
ISBN (Print)978-3-030-00301-2
DOIs
Publication statusPublished - 2018

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume10789 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

    Research areas

  • Actor model, Bugs, Concurrency, Survey

ID: 45389024