eprintid: 2497 rev_number: 6 eprint_status: archive userid: 6 dir: disk0/00/00/24/97 datestamp: 2015-01-16 09:01:05 lastmod: 2015-01-16 09:01:05 status_changed: 2015-01-16 09:01:05 type: book_section metadata_visibility: show creators_name: Giachino, Elena creators_name: Lanese, Ivan creators_name: Mezzina, Claudio Antares creators_id: creators_id: creators_id: claudio.mezzina@imtlucca.it title: Causal-consistent reversible debugging ispublished: pub subjects: QA75 divisions: CSA full_text_status: none note: 17th International Conference, FASE 2014, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2014, Grenoble, France, April 5-13, 2014, Proceedings abstract: Reversible debugging provides developers with a way to execute their applications both forward and backward, seeking the cause of an unexpected or undesired event. In a concurrent setting, reversing actions in the exact reverse order in which they have been executed may lead to undo many actions that were not related to the bug under analysis. On the other hand, undoing actions in some order that violates causal dependencies may lead to states that could not be reached in a forward execution. We propose an approach based on causal-consistent reversibility: each action can be reversed if all its consequences have already been reversed. The main feature of the approach is that it allows the programmer to easily individuate and undo exactly the actions that caused a given misbehavior till the corresponding bug is reached. This paper major contribution is the individuation of the appropriate primitives for causal-consistent reversible debugging and their prototype implementation in the CaReDeb tool. We also show how to apply CaReDeb to individuate common real-world concurrent bugs. date: 2014 series: Lecture Notes in Computer Science number: 8411 publisher: Springer pagerange: 370-384 id_number: 10.1007/978-3-642-54804-8_26 refereed: TRUE isbn: 978-3-642-54804-8 book_title: Fundamental Approaches to Software Engineering official_url: http://dx.doi.org/10.1007/978-3-642-54804-8_26 projects: This work has been partially supported by the French National Research Agency (ANR), project REVER n. ANR 11 INSE 007 citation: Giachino, Elena and Lanese, Ivan and Mezzina, Claudio Antares Causal-consistent reversible debugging. In: Fundamental Approaches to Software Engineering. Lecture Notes in Computer Science (8411). Springer, pp. 370-384. ISBN 978-3-642-54804-8 (2014)