CSEP 552 Reading 2
Due Monday, November 9 at 11:59pm.
In this reading we look at consensus in production. What does it take to run a protocol like Paxos? How do such "fault tolerant" systems fail anyway?
Choose one of the papers below, read it, and write a response. See the readings page for more details on your response.
-
Chandra, Griesemer, and Redstone. Paxos Made Live: An Engineering Perspective.
- This paper describes what Google had to add to Paxos to build the replicated database underneath Chubby.
- Questions to consider while reading: which of the gaps between the Paxos paper and the running system also show up in Lab 3? How did they test it? What would you do differently?
- Local copy (UW login required).
-
Alquraan, Takruri, Alfatafta, and Al-Kiswany. An Analysis of Network-Partitioning Failures in Cloud Systems.
- This paper studies 136 failures caused by network partitions in 25 widely used systems, including several that run Paxos or Raft.
- Which of the findings surprised you? Which of the failure modes could happen in your Lab 3 implementation? Would the dslabs tests catch these problems?
- Local copy (UW login required).
-
Bronson, Aghayev, Charapko, and Zhu. Metastable Failures in Distributed Systems.
- This short paper describes a class of failures where a temporary trigger pushes a system into a bad state that then sustains itself, for example through retry storms.
- Have you seen a metastable failure? What metastable failures are possible in a Paxos-like system? How should we change the way we design systems to avoid this class of problems?
- Local copy (UW login required).
Submit
Submit your response on Gradescope by Monday, November 9 at 11:59pm.