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

Konstantin Shvachko commented on HADOOP-10641:
----------------------------------------------

Steve, I am glad we are talking about the same thing now, which is the 
CoordinationEngine interface.
# It seems that you cite HADOOP-9361 as an example of a specification of an 
API. Same as Andrew I could not find specifications or any documents linked 
there. May be you can clarify. Is it a TLA+ spec of HDFS?
# If FileSystem specs are done and the tests developed according to specs, 
should that be sufficient to safeguard FS behaviour of any internal changes 
including introduction of CE? Which I assume is your main concern with this 
jira.
If I introduce an implementation of CE using ZK and it does not break the tests 
and therefore does not alter FileSystem semantics, isn't that a verification of 
the implementation.
# It looks like you propose to introduce a new requirement for Hadoop 
contributions, that new features should be _formally specified and 
mathematically proven_. I think this should be discussed in a separate thread 
before it can be enforced. Would be good to hear what people think.
# Generally great minds were thinking about disciplined software development 
techniques way back, probably starting from Dijkstra and Donald Knuth. I found 
them very useful dealing with complex algorithms, not sure about APIs.

> Introduce Coordination Engine interface
> ---------------------------------------
>
>                 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, hadoop-coordination.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