10
$\begingroup$

What papers on handling errors in distributed systems do you recommend?

$\endgroup$
  • 2
    $\begingroup$ I am not familiar with the subject, but aren’t there too many? Also, recommend for what? $\endgroup$ – Tsuyoshi Ito Oct 6 '10 at 21:40
  • 5
    $\begingroup$ The question seems to be far too broad; I'd guess that half of all papers in distributed computing are somehow related to fault tolerance. $\endgroup$ – Jukka Suomela Oct 6 '10 at 21:48
  • 2
    $\begingroup$ definitely too broad. vote to close... $\endgroup$ – Suresh Venkat Oct 7 '10 at 6:23
  • $\begingroup$ Maybe the question is not that bad. I tried to recommend some works below. $\endgroup$ – Dai Le Oct 7 '10 at 8:00
  • 1
    $\begingroup$ The question would have been better if you had originally included this information as motivation. $\endgroup$ – Dave Clarke Oct 7 '10 at 17:58
8
$\begingroup$

You might want to have a look at the works that won Tushar D. Chandra, Vassos Hadzilacos, and Sam Toueg the Edsger W. Dijkstra Prize in 2010:

These papers introduce the notion of failure detectors in a distributed system in a general and precise framework. Intuitively, they tried to study the minimal amount of failure information needed to solve consensus. It turns out that you don't need a perfect failure detector to solve consensus. Even unreliable failure detectors satisfying certain minimal conditions will suffice for the task. These papers were very influential on how to deal with failures in distributed systems.

$\endgroup$
3
$\begingroup$

What kind of faults in the system?Are you looking for solutions to handling Byzantine faults or just the classic fail-stop model? Solutions in the presence of Byzantine nodes in a distributed system is the more intriguing problem. The problem was formalized by Leslie Lamport(the Byzantine Generals problem' and the 1999 paper by Barbara Liskov and Miguel Castro presents the closest working practical solution ' Practical Byzantine fault-tolerance'. Original formal models to deal with fault-tolerance include the state-machine approach of Fred Schneider and view-stamped replication I do agree the question is very general, the field is immense and the theory forms the basis of most systems running today online. Maybe a more specific fault-model and the problem domain would help obtain better answers

$\endgroup$
3
$\begingroup$

Here is a collection of patterns for dealing handling errors in distributed systems:

Alternatively, for more generic work, there is the book Introduction to Reliable Distributed Programming by Rachid Guerraoui and Luis Rodrigues, which has a vast range of practical algorithms including failure recovery variants of many. The more classical text Distributed Algorithms by Nancy Lynch covers similar ground from a more theoretical perspective.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.