Technical report detail

A Highly Available Log Service for Distributed Transaction Termination

by Camargos, Lasaro and Wieloch, Marcin and Pedone, Fernando and Madeira, Edmundo


Processing distributed transactions hinges on enforcing atomicity and durability: resource managers participating in a transaction must agree on its outcome and the transaction updates must be permanent. We introduce the log service abstraction, which gathers votes to commit or abort a transaction and its updates, and outputs the transaction's outcome. Updates are made durable and non-concurrent transactions are totally ordered by the service. The sequence of updates performed by a resource manager is available as a means to consistently recover resource managers without relying on their local state. As a consequence, a remote process, whose state will be recovered from the log service, can reincarnate a crashed resource manager. Moreover, the service ensures that only one process plays the role of a given resource manager at any time. We present two highly available implementations of this service and evaluate their performance running TPC-C and a microbenchmark on a distributed database.


Technical report 2006/08, December 2006

BibTex entry

@techreport{06highly, author = {Camargos, Lasaro and Wieloch, Marcin and Pedone, Fernando and Madeira, Edmundo}, title = {A Highly Available Log Service for Distributed Transaction Termination}, institution = {University of Lugano}, number = {2006/08}, year = 2006, month = dec }
Attachments