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

Restore a few important missing logics for balancer in 2.0

    XMLWordPrintableJSON

Details

    • Reviewed
    • 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

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

            Dates

              Created:
              Updated:
              Resolved: