hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Zhihong Yu (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-5875) Process RIT and Master restart may remove an online server considering it as a dead server
Date Fri, 04 May 2012 16:48:50 GMT

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

Zhihong Yu commented on HBASE-5875:

The following change is for debugging, right ? If so, please change log level accordingly:
+    }catch(NotServingRegionException nsre){
+      LOG.info("Failed verification of " + Bytes.toStringBinary(regionName) +
+          " at address=" + address + "; " + t);
+      throw nsre;
+    } catch (NotServingRegionException nsre) {
+      if(rit == true){
+        // the root region location is available.
People unfamiliar with processRegionInTransitionAndBlockUntilAssigned() may get confused by
the code above. rit actually means root region has come out of transition. So rit should be
named accordingly.
+  public void setServerShutdownHandlerEnabled(boolean setServerShutDownEnabled) {
The above method should be made package-private. Append 'ForTest' to the end of method name
would help clarify its purpose.
> Process RIT and Master restart may remove an online server considering it as a dead server
> ------------------------------------------------------------------------------------------
>                 Key: HBASE-5875
>                 URL: https://issues.apache.org/jira/browse/HBASE-5875
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.92.1
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>             Fix For: 0.94.1
>         Attachments: HBASE-5875.patch, HBASE-5875_0.94.patch
> If on master restart it finds the ROOT/META to be in RIT state, master tries to assign
the ROOT region through ProcessRIT.
> Master will trigger the assignment and next will try to verify the Root Region Location.
> Root region location verification is done seeing if the RS has the region in its online
> If the master triggered assignment has not yet been completed in RS then the verify root
region location will fail.
> Because it failed 
> {code}
> splitLogAndExpireIfOnline(currentRootServer);
> {code}
> we do split log and also remove the server from online server list. Ideally here there
is nothing to do in splitlog as no region server was restarted.
> So master, though the server is online, master just invalidates the region server.
> In a special case, if i have only one RS then my cluster will become non operative.

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


View raw message