Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-7411

Use Netflix's Curator zookeeper library



    • Type: New Feature
    • Status: Resolved
    • Priority: Major
    • Resolution: Won't Fix
    • Affects Version/s: 0.95.2
    • Fix Version/s: None
    • Component/s: Zookeeper
    • Labels:


      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:


        1. 7411v2.txt
          29 kB
          Michael Stack
        2. 7411v2.txt
          30 kB
          Michael Stack
        3. 7411v3.txt
          35 kB
          Michael Stack
        4. 7411v4.txt
          34 kB
          Michael Stack
        5. 7411v4.txt
          34 kB
          Michael Stack
        6. hbase-7411_v0.patch
          35 kB
          Enis Soztutar

          Issue Links



              • Assignee:
                enis Enis Soztutar
                enis Enis Soztutar
              • Votes:
                1 Vote for this issue
                14 Start watching this issue


                • Created: