Message logging: pessimistic, optimistic, causal, and optimal

   page       BibTeX_logo.png   
@article{logging-tse24,
   abstract = {Message-logging protocols are an integral part of a popular technique for implementing processes that can recover from crash failures. All message-logging protocols require that, when recovery is complete, there be no orphan processes, which are surviving processes whose states are inconsistent with the recovered state of a crashed process. We give a precise specification of the consistency property "no orphan processes". From this specification, we describe how different existing classes of message-logging protocols (namely optimistic, pessimistic, and a class that we call causal) implement this property. We then propose a set of metrics to evaluate the performance of message-logging protocols, and characterize the protocols that are optimal with respect to these metrics. Finally, starting from a protocol that relies on causal delivery order, we show how to derive optimal causal protocols that tolerate f overlapping failures and recoveries for a parameter f (1≤f≤n).},
   apice = {LoggingTse24},
   author = {Lorenzo Alvisi and Keith Marzullo},
   doi = {10.1109/32.666828},
   issn = {0098-5589},
   journal = {IEEE Transactions on Software Engineering},
   number = 2,
   numpages = 11,
   openalex = {W2169164058},
   pages = {149--159},
   publisher = {IEEE},
   title = {Message logging: pessimistic, optimistic, causal, and optimal},
   url = {https://doi.org/10.1109/32.666828},
   volume = 24,
   year = 1998
}