HBase
  1. HBase
  2. HBASE-3171

Drop ROOT and instead store META location(s) directly in ZooKeeper

    Details

    • Hadoop Flags:
      Incompatible change, Reviewed

      Description

      Rather than storing the ROOT region location in ZooKeeper, going to ROOT, and reading the META location, we should just store the META location directly in ZooKeeper.

      The purpose of the root region from the bigtable paper was to support multiple meta regions. Currently, we explicitly only support a single meta region, so the translation from our current code of a single root location to a single meta location will be very simple. Long-term, it seems reasonable that we could store several meta region locations in ZK. There's been some discussion in HBASE-1755 about actually moving META into ZK, but I think this jira is a good step towards taking some of the complexity out of how we have to deal with catalog tables everywhere.

      As-is, a new client already requires ZK to get the root location, so this would not change those requirements in any way.

      The primary motivation for this is to simplify things like CatalogTracker. The way we can handle root in that class is really simple but the tracking of meta is difficulty and a bit hacky. This hack on tracking of the meta location is what caused one of the bugs over in HBASE-3159.

      1. HBASE-3171.patch
        141 kB
        Jean-Daniel Cryans
      2. HBASE-3171-v2.patch
        150 kB
        Jean-Daniel Cryans
      3. HBASE-3171-v3.patch
        149 kB
        Jean-Daniel Cryans
      4. HBASE-3171-v4.patch
        174 kB
        Jean-Daniel Cryans
      5. HBASE-3171-v5.patch
        190 kB
        Jean-Daniel Cryans
      6. HBASE-3171-v6.patch
        192 kB
        Jean-Daniel Cryans
      7. HBASE-3171-v7.patch
        200 kB
        Jean-Daniel Cryans
      8. HBASE-3171-v8.patch
        199 kB
        Jean-Daniel Cryans
      9. 3171v10.txt
        199 kB
        stack

        Issue Links

          Activity

            People

            • Assignee:
              Jean-Daniel Cryans
              Reporter:
              Jonathan Gray
            • Votes:
              0 Vote for this issue
              Watchers:
              29 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development