xufeng commented on HBASE-5677:

We can reproduce this issue by following steps with 0.90:

step1:start a cluster and create a table that has many regions.
step2:disable table created in step1 by shell.
step3:kill the active master.
step3:the backup master will become active one,when the master checkin 
regionservers. enable the table by shell.

result:the duplicate problem issue happened.

I think the master should not provide service when it did not complete the 
We can add a method in HMasterInterface 
public boolean isMasterAvailable();

  //the master is running and it can provide service
  public boolean isMasterAvailable() {
            return !isStopped() && isActiveMaster() && isInitialized();

When the client getMaster,we can check it.

pls give me the suggestions,thanks.
> The master never does balance because duplicate openhandled the one region
> --------------------------------------------------------------------------
>                 Key: HBASE-5677
>                 URL: https://issues.apache.org/jira/browse/HBASE-5677
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.90.6
>         Environment: 0.90
>            Reporter: xufeng
>            Assignee: xufeng
> If region be assigned When the master is doing initialization(before do 
> processFailover),the region will be duplicate openhandled.
> because the unassigned node in zookeeper will be handled again in 
> AssignmentManager#processFailover()
> it cause the region in RIT,thus the master never does balance.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
For more information on JIRA, see: http://www.atlassian.com/software/jira


Reply via email to