You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Jim Kellerman (JIRA)" <ji...@apache.org> on 2008/02/20 04:46:48 UTC

[jira] Commented: (HBASE-457) Factor Master into Master, RegionManager, and ServerManager

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

Jim Kellerman commented on HBASE-457:
-------------------------------------

+0 TestTableMapReduce failed with:

junit.framework.AssertionFailedError
	at org.apache.hadoop.hbase.MultiRegionTable.makeMultiRegionTable(MultiRegionTable.java:150)
	at org.apache.hadoop.hbase.mapred.TestTableMapReduce.localTestMultiRegionTable(TestTableMapReduce.java:279)
	at org.apache.hadoop.hbase.mapred.TestTableMapReduce.testTableMapReduce(TestTableMapReduce.java:206)

On the other hand TestTableIndex which runs the same code, passed.

> Factor Master into Master, RegionManager, and ServerManager
> -----------------------------------------------------------
>
>                 Key: HBASE-457
>                 URL: https://issues.apache.org/jira/browse/HBASE-457
>             Project: Hadoop HBase
>          Issue Type: Sub-task
>          Components: master
>            Reporter: Bryan Duxbury
>            Assignee: Bryan Duxbury
>            Priority: Minor
>         Attachments: 457-v2.patch, 457.patch
>
>
> Even with TableOperation and descendants factored out of HMaster, it's still a huge class. Every bit of master state basically lives in one class, so it's very challenging to understand the logical groupings of everything.
> To make this a little more manageable, let's make two new abstractions, ServerManager and RegionManager.
> ServerManager keeps track of servers - leases, message processing, load and load average, etc. 
> RegionManager keeps track of the root location, meta table online state, assigning regions to servers, and so on. 
> HMaster then keeps around one of each of these classes to track state and do it's master stuff. The HMaster class itself does not change it's interface to external consumers. It also retains the main processing loop, HBase closed state, start and stop, etc.

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