[ 
https://issues.apache.org/jira/browse/HADOOP-10641?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14029899#comment-14029899
 ] 

Andrey Stepachev commented on HADOOP-10641:
-------------------------------------------

[~zero45], good work. 
just a couple of picky notes :)

org/apache/hadoop/coordination/zk/ZkCoordinationEngine.java:117
Not configured localNodeId can lead to uncontrolled creation of new zk 
sessions. 
Should code check that before creating ZooKeeper object?
'catch' should close zookeeper, if it was opened.

org/apache/hadoop/coordination/zk/ZkCoordinationEngine.java:132
split doesn’t take into account chrooted zk configurations. 
it is much better to use org.apache.zookeeper.client.ConnectStringParser

org/apache/hadoop/coordination/zk/ZkCoordinationEngine.java:301
currentGSN is long, but treated as integer. easy to create overflow.

More serious problem, that zk sequential nodes are _integer_.
Code should guard sequence overflows over zero and handle that using 
more then one parent znodes or zero crossing detection or other techniques 
preventing integer seqence id overflow.



> Introduce Coordination Engine
> -----------------------------
>
>                 Key: HADOOP-10641
>                 URL: https://issues.apache.org/jira/browse/HADOOP-10641
>             Project: Hadoop Common
>          Issue Type: New Feature
>    Affects Versions: 3.0.0
>            Reporter: Konstantin Shvachko
>            Assignee: Plamen Jeliazkov
>         Attachments: HADOOP-10641.patch, HADOOP-10641.patch, 
> HADOOP-10641.patch
>
>
> Coordination Engine (CE) is a system, which allows to agree on a sequence of 
> events in a distributed system. In order to be reliable CE should be 
> distributed by itself.
> Coordination Engine can be based on different algorithms (paxos, raft, 2PC, 
> zab) and have different implementations, depending on use cases, reliability, 
> availability, and performance requirements.
> CE should have a common API, so that it could serve as a pluggable component 
> in different projects. The immediate beneficiaries are HDFS (HDFS-6469) and 
> HBase (HBASE-10909).
> First implementation is proposed to be based on ZooKeeper.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to