The Actor model is a concurrent computation model based on asynchronous message passing and shared-nothing principle. These characteristics and the absence of locks guarantee that actor-based programs can avoid simple concurrency bugs such as data races and deadlocks. However, they are not completely free from application level concurrency bugs that occur, for example, due to the indeterminate arrival order of messages.
To assist discovering such bugs in actor-based systems, we designed and implemented Actoverse, a debugger that adopts reverse debugging and provides an interactive aid for controlling the arrival order of messages upon re-execution. This paper briefly presents its architecture and utilization in Akka-based applications.