Please use this identifier to cite or link to this item: http://bura.brunel.ac.uk/handle/2438/18461
Full metadata record
DC FieldValueLanguage
dc.contributor.authorNeykova, R-
dc.contributor.authorYoshida, N-
dc.coverage.spatialAustin, TX, USA-
dc.date.accessioned2019-06-16T12:44:29Z-
dc.date.available2017-02-05-
dc.date.available2019-06-16T12:44:29Z-
dc.date.issued2017-
dc.identifier.citationACM International Conference Proceeding Series, 2017, pp. 98 - 108en_US
dc.identifier.urihttp://bura.brunel.ac.uk/handle/2438/18461-
dc.description.abstractFault-tolerant communication systems rely on recovery strategies which are often error-prone (e.g. a programmer manually specifies recovery strategies) or inefficient (e.g. the whole system is restarted from the beginning). This paper proposes a static analysis based on multiparty session types that can efficiently compute a safe global state from which a system of interacting processes should be recovered. We statically analyse the communication flow of a program, given as a multiparty protocol, to extract the causal dependencies between processes and to localise failures. We formalise our recovery algorithm and prove its safety. A recovered communication system is free from deadlocks, orphan messages and reception errors. Our recovery algorithm incurs less communication cost (only affected processes are notified) and overall execution time (only required states are repeated). On top of our analysis, we design and implement a runtime framework in Erlang where failed processes and their dependencies are soundly restarted from a computed safe state. We evaluate our recovery framework on messagepassing benchmarks and a use case for crawling webpages. The experimental results indicate our framework outperforms a built-in static recovery strategy in Erlang when a part of the protocol can be safely recovered.en_US
dc.format.extent98 - 108-
dc.language.isoenen_US
dc.publisherCompiler Constructionen_US
dc.sourceCompiler Construction-
dc.sourceCompiler Construction-
dc.subjectMultiparty Session Typesen_US
dc.subjectRecoveryen_US
dc.subjectDistributed Programmingen_US
dc.subjectErlangen_US
dc.subjectFault-toleranceen_US
dc.titleLet it recover: Multiparty protocol-induced recoveryen_US
dc.typeConference Paperen_US
dc.identifier.doihttp://dx.doi.org/10.1145/3033019.3033031-
dc.relation.isPartOfACM International Conference Proceeding Series-
pubs.finish-date2017-02-06-
pubs.finish-date2017-02-06-
pubs.publication-statusPublished-
pubs.start-date2017-02-05-
pubs.start-date2017-02-05-
Appears in Collections:Dept of Computer Science Research Papers

Files in This Item:
File Description SizeFormat 
FullText.pdf499.47 kBAdobe PDFView/Open


Items in BURA are protected by copyright, with all rights reserved, unless otherwise indicated.