hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Purtell (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-7411) Use Netflix's Curator zookeeper library
Date Thu, 20 Dec 2012 23:27:13 GMT

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

Andrew Purtell commented on HBASE-7411:
---------------------------------------

I have the same concern here as was expressed on another JIRA recently regards htrace. It
may not be a good idea to depend on a single developer project i.e. not an ASF community project.
There are several instances I can think of now off the top of my head, ordered from least
to greatest concern:

- Cliff Click's high-scale-lib -- A single use case and a very stable library, not much of
a concern

- Yammer metrics -- Straightforward use of a stable library, and can be replaced without too
much difficulty 

- htrace -- Without being an ASF Hadoop-ish project will we see coverage in HDFS and without
that would adding spans in HBase code deliver enough of a return? I.e., unsure about the longer
term value proposition.

- Curator -- HBase's use of ZooKeeper is absolutely critical. This should not be outsourced,
especially outside of an ASF Hadoop-ish project.
                
> Use Netflix's Curator zookeeper library
> ---------------------------------------
>
>                 Key: HBASE-7411
>                 URL: https://issues.apache.org/jira/browse/HBASE-7411
>             Project: HBase
>          Issue Type: New Feature
>          Components: Zookeeper
>    Affects Versions: 0.96.0
>            Reporter: Enis Soztutar
>            Assignee: Enis Soztutar
>
> We have mentioned using the Curator library (https://github.com/Netflix/curator) elsewhere
but we can continue the discussion in this.  
> The advantages for the curator lib over ours are the recipes. We have very similar retrying
mechanism, and we don't need much of the nice client-API layer. 
> We also have similar Listener interface, etc. 
> I think we can decide on one of the following options: 
> 1. Do not depend on curator. We have some of the recipes, and some custom recipes (ZKAssign,
Leader election, etc already working, locks in HBASE-5991, etc). We can also copy / fork some
code from there.
> 2. Replace all of our zk usage / connection management to curator. We may keep the current
set of API's as a thin wrapper. 
> 3. Use our own connection management / retry logic, and build a custom CuratorFramework
implementation for the curator recipes. This will keep the current zk logic/code intact, and
allow us to use curator-recipes as we see fit. 
> 4. Allow both curator and our zk layer to manage the connection. We will still have 1
connection, but 2 abstraction layers sharing it. This is the easiest to implement, but a freak
show? 
> I have a patch for 4, and now prototyping 2 or 3 whichever will be less painful. 
> Related issues: 
> HBASE-5547
> HBASE-7305
> HBASE-7212

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message