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

        Issue Links

          Activity

          Jonathan Gray created issue -
          stack made changes -
          Field Original Value New Value
          Fix Version/s 0.92.0 [ 12314223 ]
          Enis Soztutar made changes -
          Link This issue is related to HBASE-6052 [ HBASE-6052 ]
          Jean-Daniel Cryans made changes -
          Attachment HBASE-3171.patch [ 12555598 ]
          Jean-Daniel Cryans made changes -
          Attachment HBASE-3171-v2.patch [ 12560859 ]
          Jean-Daniel Cryans made changes -
          Attachment HBASE-3171-v3.patch [ 12568322 ]
          Ted Yu made changes -
          Status Open [ 1 ] Patch Available [ 10002 ]
          Jean-Daniel Cryans made changes -
          Attachment HBASE-3171-v4.patch [ 12568664 ]
          Jean-Daniel Cryans made changes -
          Attachment HBASE-3171-v5.patch [ 12572207 ]
          Jean-Daniel Cryans made changes -
          Attachment HBASE-3171-v6.patch [ 12572627 ]
          Jean-Daniel Cryans made changes -
          Attachment HBASE-3171-v7.patch [ 12572657 ]
          Jean-Daniel Cryans made changes -
          Attachment HBASE-3171-v8.patch [ 12572830 ]
          stack made changes -
          Attachment 3171v10.txt [ 12572833 ]
          stack made changes -
          Status Patch Available [ 10002 ] Resolved [ 5 ]
          Hadoop Flags Incompatible change,Reviewed [ 10342, 10343 ]
          Assignee Jean-Daniel Cryans [ jdcryans ]
          Fix Version/s 0.95.0 [ 12324094 ]
          Resolution Fixed [ 1 ]
          stack made changes -
          Fix Version/s 0.98.0 [ 12323143 ]
          stack made changes -
          Status Resolved [ 5 ] Closed [ 6 ]

            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