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

Restore a few important missing logics for balancer in 2.0

    XMLWordPrintableJSON

    Details

    • Hadoop Flags:
      Reviewed
    • Release Note:
      Hide
      Re-enabled 'hbase.master.loadbalance.bytable', default 'false'.
      Draining servers are removed from consideration by blancer.balanceCluster() call.
      Show
      Re-enabled 'hbase.master.loadbalance.bytable', default 'false'. Draining servers are removed from consideration by blancer.balanceCluster() call.

      Description

      After looking at the code, and some testing, I see the following things are missing for balancer to work properly after AMv2.

      1. hbase.master.loadbalance.bytable is not respected. It is always 'bytable'. Previous default is cluster wide, not by table.
      2. Servers with no assignments is not added for balance consideration.
      3. Crashed server is not removed from the in-memory server map in RegionStates, which affects balance.
      4. Draining marker is not respected when balance.

      Also try to re-enable TestRegionRebalancing, which has a testRebalanceOnRegionServerNumberChange

        Attachments

        1. HBASE-19021-master-v2.patch
          7 kB
          Jerry He
        2. HBASE-19021-master.patch
          6 kB
          Jerry He
        3. HBASE-19021-master.patch
          6 kB
          Jerry He

          Activity

            People

            • Assignee:
              jinghe Jerry He
              Reporter:
              jinghe Jerry He
            • Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: