hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jim Kellerman (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HBASE-71) [hbase] Master should rebalance region assignments periodically
Date Thu, 03 Apr 2008 01:16:27 GMT

    [ https://issues.apache.org/jira/browse/HBASE-71?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12584944#action_12584944
] 

Jim Kellerman commented on HBASE-71:
------------------------------------

Reviewed patch. I have the following comments:

Are the region names displayed by regionserver.jsp sorted?

Why does RegionManager.regionsAwaitingAssignment return Set instead of List?

In ServerManager.processRegionClose, is the following correct?
{code}
      // all regions that are being closed should have been marked as 
      // closing. remove it from that state.
      master.regionManager.noLongerClosing(region.getRegionName());
{code}
What about when a region server exits cleanly and reports all the regions it has closed?

Also in ServerManager.processRegionClose, is the following correct?
{code}
      master.regionManager.noLongerUnassigned(region);
{code}
If the region is closed, is it now not assigned?

In ServerManager.getAverageLoad, LOG.debug should be surrounded by
{code}
  if (LOG.isDebugEnabled()) {
    LOG.debug.....
  }
{code}

HRegionServer:
- numRegionsToReport should be final.
- isOnline should be volatile because if it is set in one thread and read in another, there
is no guarantee that the current value will have been published to the thread reading the
value.

MiniHBaseCluster:
- remove method deleteFile. Not referenced anywhere.
- the imports for o.a.h.fs.FileSystem, o.a.h.fs.Path, o.a.h.h.util.FSUtils and java.io.File
are not used. Remove them.
- fix javadoc for
{code}
MiniHBaseCluster(HBaseConfiguration conf, int numRegionServers) throws IOException
{code}

MultiRegionTable:
- the import java.util.SortedMap is not used.
- add javadoc for public constructor.

TestRegionRebalancing:
- imports java.util.Collection, java.util.TreeMap, o.a.h.h.client.HBaseAdmin, o.a.h.h.HConstants,
o.a.h.h.HStoreKey, o.a.h.h.HScannerInterface are not used. Remove them.
- Duplicate import of java.util.List - remove one.
- missing javadoc for preHBaseClusterSetup
- incorrect javadoc for testRebalancing
- remove commented code:
{code}
        // assertTrue(server + " isn't of average load! Avg: " + avg + " actual: " 
        //   + server.getOnlineRegions().size(), 
        //   serverLoad <= avg + 2 && serverLoad >= avg - 2);
{code}
- Overall: very nice test case!



> [hbase] Master should rebalance region assignments periodically
> ---------------------------------------------------------------
>
>                 Key: HBASE-71
>                 URL: https://issues.apache.org/jira/browse/HBASE-71
>             Project: Hadoop HBase
>          Issue Type: Improvement
>          Components: master
>            Reporter: Bryan Duxbury
>            Assignee: Bryan Duxbury
>             Fix For: 0.2.0
>
>         Attachments: 71-v2.patch, 71-v3.patch, 71.patch
>
>
> The master currently only does region assignments at startup or when there are splits
or dead regionservers. This means that if you join a new regionserver to the cluster after
startup, it does not get assigned a fair share of the already-served regions as you would
expect. It only gets a share of new regions being served.
> The master should periodically check the balance of regions, based on whatever assignment
function, instead of in reaction to the above listed events.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message