Saved in:
Bibliographic Details
Main Author: Vidal, Germán
Format: Preprint
Published: 2023
Subjects:
Online Access:https://arxiv.org/abs/2401.00087
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866929199160229888
author Vidal, Germán
author_facet Vidal, Germán
contents Rollback recovery strategies are well-known in concurrent and distributed systems. In this context, recovering from unexpected failures is even more relevant given the non-deterministic nature of execution, which means that it is practically impossible to foresee all possible process interactions. In this work, we consider a message-passing concurrent programming language where processes interact through message sending and receiving, but shared memory is not allowed. In this context, we design a checkpoint-based rollback recovery strategy that does not need a central coordination. For this purpose, we extend the language with three new operators: check, commit, and rollback. Furthermore, our approach is purely asynchronous, which is an essential ingredient to developing a source-to-source program instrumentation implementing a rollback recovery strategy.
format Preprint
id arxiv_https___arxiv_org_abs_2401_00087
institution arXiv
publishDate 2023
record_format arxiv
spellingShingle An Asynchronous Scheme for Rollback Recovery in Message-Passing Concurrent Programming Languages
Vidal, Germán
Programming Languages
Rollback recovery strategies are well-known in concurrent and distributed systems. In this context, recovering from unexpected failures is even more relevant given the non-deterministic nature of execution, which means that it is practically impossible to foresee all possible process interactions. In this work, we consider a message-passing concurrent programming language where processes interact through message sending and receiving, but shared memory is not allowed. In this context, we design a checkpoint-based rollback recovery strategy that does not need a central coordination. For this purpose, we extend the language with three new operators: check, commit, and rollback. Furthermore, our approach is purely asynchronous, which is an essential ingredient to developing a source-to-source program instrumentation implementing a rollback recovery strategy.
title An Asynchronous Scheme for Rollback Recovery in Message-Passing Concurrent Programming Languages
topic Programming Languages
url https://arxiv.org/abs/2401.00087