[
https://issues.apache.org/jira/browse/HBASE-6228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13399370#comment-13399370
]
ramkrishna.s.vasudevan commented on HBASE-6228:
-----------------------------------------------
@Chunhui
Going thro the patch again.
Now you are trying to update the parent region server name into the daughter.
Now assume a region that was split and still not daughters are not added to
META.
Now the RS goes down. SSH will start and find the missing daughter. Now you
try to add the parent server name to the daughter. Before the assignment is
done master goes down.
Now when trying to fix daughter it will find the the parent server name
associated with it and it will not assign it right.
So i think here what we should try is to avoid two assignments.
What do you feel Chunhui?
In the previous patch because the check if the server was null is commented the
problem is almost same but in a different way. Correct me if am wrong Chunhui.
> Fixup daughters twice cause daughter region assigned twice
> -----------------------------------------------------------
>
> Key: HBASE-6228
> URL: https://issues.apache.org/jira/browse/HBASE-6228
> Project: HBase
> Issue Type: Bug
> Components: master
> Reporter: chunhui shen
> Assignee: chunhui shen
> Fix For: 0.96.0
>
> Attachments: HBASE-6228.patch, HBASE-6228v2.patch, HBASE-6228v2.patch
>
>
> First, how fixup daughters twice happen?
> 1.we will fixupDaughters at the last of HMaster#finishInitialization
> 2.ServerShutdownHandler will fixupDaughters when reassigning region through
> ServerShutdownHandler#processDeadRegion
> When fixupDaughters, we will added daughters to .META., but it coudn't
> prevent the above case, because FindDaughterVisitor.
> The detail is as the following:
> Suppose region A is a splitted parent region, and its daughter region B is
> missing
> 1.First, ServerShutdownHander thread fixup daughter, so add daughter region B
> to .META. with serverName=null, and assign the daughter.
> 2.Then, Master's initialization thread will also find the daughter region B
> is missing and assign it. It is because FindDaughterVisitor consider daughter
> is missing if its serverName=null
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira