[
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