[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12899765#action_12899765
 ] 

Flavio Junqueira commented on ZOOKEEPER-702:
--------------------------------------------

Great job so far, Abmar. I'm thoroughly reviewing the patch, and I'm not done 
yet, but I have I few comments that you could consider addressing:

# Please revise javadocs. Many of them have typos and incorrect information, 
e.g., the phi accrual javadocs refer to the Bertier fd;
# In ZooKeeperMain.java (-259,9 +279,21), you should perhaps have a more 
informative message when throwing an IllegalArgumentException. You could, for 
example, list the current fd options available;
# The tests included do not exercise the failure detectors with a running 
instance of the system. Instead they only check a few invariants of the failure 
detectors. We need to test that we can run an ensemble of servers with each of 
the failure detector implementations. You could use (or extend if necessary) 
QuorumBase or QuorumUtil to run an ensemble with each of the failure detectors. 
You could then kill the leader while executing operations and verify that 
eventually a new leader emerges and regular operation is resumed.  

> GSoC 2010: Failure Detector Model
> ---------------------------------
>
>                 Key: ZOOKEEPER-702
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-702
>             Project: Zookeeper
>          Issue Type: Wish
>            Reporter: Henry Robinson
>            Assignee: Abmar Barros
>         Attachments: bertier-pseudo.txt, bertier-pseudo.txt, chen-pseudo.txt, 
> chen-pseudo.txt, phiaccrual-pseudo.txt, phiaccrual-pseudo.txt, 
> ZOOKEEPER-702-code.patch, ZOOKEEPER-702-doc.patch, ZOOKEEPER-702.patch, 
> ZOOKEEPER-702.patch, ZOOKEEPER-702.patch, ZOOKEEPER-702.patch, 
> ZOOKEEPER-702.patch, ZOOKEEPER-702.patch, ZOOKEEPER-702.patch, 
> ZOOKEEPER-702.patch, ZOOKEEPER-702.patch, ZOOKEEPER-702.patch
>
>
> Failure Detector Module
> Possible Mentor
> Henry Robinson (henry at apache dot org)
> Requirements
> Java, some distributed systems knowledge, comfort implementing distributed 
> systems protocols
> Description
> ZooKeeper servers detects the failure of other servers and clients by 
> counting the number of 'ticks' for which it doesn't get a heartbeat from 
> other machines. This is the 'timeout' method of failure detection and works 
> very well; however it is possible that it is too aggressive and not easily 
> tuned for some more unusual ZooKeeper installations (such as in a wide-area 
> network, or even in a mobile ad-hoc network).
> This project would abstract the notion of failure detection to a dedicated 
> Java module, and implement several failure detectors to compare and contrast 
> their appropriateness for ZooKeeper. For example, Apache Cassandra uses a 
> phi-accrual failure detector (http://ddsg.jaist.ac.jp/pub/HDY+04.pdf) which 
> is much more tunable and has some very interesting properties. This is a 
> great project if you are interested in distributed algorithms, or want to 
> help re-factor some of ZooKeeper's internal code.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to