You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Mikhail Antonov (JIRA)" <ji...@apache.org> on 2014/07/04 10:51:34 UTC
[jira] [Updated] (HADOOP-10641) Introduce Coordination Engine
[ https://issues.apache.org/jira/browse/HADOOP-10641?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mikhail Antonov updated HADOOP-10641:
-------------------------------------
Attachment: hadoop-coordination.patch
Guys,
attached is improved version of the patch, with following changes:
- ZkCoordinationEngine class is now not abstract, rather it relays agreement execution to registered AgreementHandler class (see below)
- Added interface AgreementHandler<L> to control execution of the agreements learned by CoordinationEngine. This interface is parametrized with the type L of custom Learner class. Also added method to register handler into CoordinationEngine interface. SampleLearner class is added in tests as an example.
- Improved handling of ZooKeeper 'Disconnected' event inside ZK-based reference implementation of Coordination engine, now in case zookeeper client gets disconnected from the ensemble, engine will pause and resume automatically when it re-connects to zookeeper.
- Cleaned up ZkConfigKeys
- Improved javadoc, refined pom.xml-s.
- Moved exceptions and proposal classes to o.a.hadoop.coordination package, rather than subpackages of this package.
> 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, 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)