You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Heng Chen (JIRA)" <ji...@apache.org> on 2016/06/23 12:58:17 UTC

[jira] [Comment Edited] (HBASE-16008) A robust way deal with early termination of HBCK

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

Heng Chen edited comment on HBASE-16008 at 6/23/16 12:57 PM:
-------------------------------------------------------------

After check the patch,  the idea with 'Maintenance' mode looks good to me.  
But there is still one problem:  how do you prevent split happen?
It seems just reject split request?

And All tools which need disable one switch can't be run simultaneously?  This maybe one problem some day.


was (Author: chenheng):
After check the patch,  the idea with 'Maintenance' mode looks good to me.   So if there is another tool needs disable some switch,  it has to create the same znode, right?  All tools which need disable one switch can't be run simultaneously.  This maybe one problem some day.

> A robust way deal with early termination of HBCK
> ------------------------------------------------
>
>                 Key: HBASE-16008
>                 URL: https://issues.apache.org/jira/browse/HBASE-16008
>             Project: HBase
>          Issue Type: Improvement
>          Components: hbck
>            Reporter: Stephen Yuan Jiang
>            Assignee: Stephen Yuan Jiang
>
> When HBCK is running, we want to disable Catalog Janitor, Balancer and Split/Merge.  Today, the implementation is not robust.  If HBCK is terminated earlier by Control-C, the changed state would not be reset to original.  
> HBASE-15406 was trying to solve this problem for Split/Merge switch.  The implementation is complicated, and it did not solve CJ and Balancer.  
> We also have another problem is that to prevent multiple HBCK run, we used a file lock to indicate a running HBCK; earlier terminating might not clean up the file.  Sometimes we have to manually remove the file so that future HBCK could run.  
> The proposal to solve all the problem is to use a znode to indicate that one HBCK is running.  CJ, balancer, and Split/Merge switch all look for this znode before doing it operation.  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)