hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "bharath v (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HBASE-11405) Multiple invocations of hbck in parallel disables balancer permanently
Date Wed, 02 Jul 2014 13:54:24 GMT

     [ https://issues.apache.org/jira/browse/HBASE-11405?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

bharath v updated HBASE-11405:
------------------------------

    Attachment: HBASE-11405-trunk.patch

This patch creates a file in <rootdir>/<tmpdir> and maintains a lease on it till
hbck exits. Parallel instances of hbck check if such a file exists and bail out if necessary.
Added a shutdownhook() to this class to clean up the lock file incase user kills hbck with
a SIGTERM. I make sure that the cleanup is done only once using a flag.

> Multiple invocations of hbck in parallel disables balancer permanently 
> -----------------------------------------------------------------------
>
>                 Key: HBASE-11405
>                 URL: https://issues.apache.org/jira/browse/HBASE-11405
>             Project: HBase
>          Issue Type: Bug
>          Components: Balancer, hbck
>    Affects Versions: 0.99.0
>            Reporter: bharath v
>         Attachments: HBASE-11405-trunk.patch
>
>
> This is because of the following piece of code in hbck
> {code:borderStyle=solid}
>   boolean oldBalancer = admin.setBalancerRunning(false, true);
>     try {
>       onlineConsistencyRepair();
>     }
>     finally {
>       admin.setBalancerRunning(oldBalancer, false);
>     }
> {code}
> Newer invocations set oldBalancer to false as it was disabled by previous invocations
and this disables balancer permanently unless its manually turned on by the user. Easy to
reproduce, just run hbck 100 times in a loop in 2 different sessions and you can see that
balancer is set to false in the HMaster logs.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message