You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "James Page (Updated) (JIRA)" <ji...@apache.org> on 2012/03/01 13:14:01 UTC

[jira] [Updated] (HBASE-5502) region_mover.rb fails to load regions back to original server for regions only containing empty tables.

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

James Page updated HBASE-5502:
------------------------------

    Summary: region_mover.rb fails to load regions back to original server for regions only containing empty tables.  (was: region_mover.rb fails to load -ROOT- region back to original server in deployment with no user tables.)
    
> region_mover.rb fails to load regions back to original server for regions only containing empty tables.
> -------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-5502
>                 URL: https://issues.apache.org/jira/browse/HBASE-5502
>             Project: HBase
>          Issue Type: Bug
>          Components: scripts
>    Affects Versions: 0.92.0
>         Environment: Ubuntu precise
>            Reporter: James Page
>            Priority: Minor
>         Attachments: HDFS-5502.patch
>
>
> The region_mover loadRegion function incorrectly uses 'isSuccessfulScan':
> {noformat} 
>   for r in regions
>     exists = false
>     begin
>       exists = isSuccessfulScan(admin, r)
>     rescue org.apache.hadoop.hbase.NotServingRegionException => e
>       $LOG.info("Failed scan of " + e.message)
>     end
> {noformat} 
> isSuccessfulScan throws an exception when it fails rather than returning status.
> As a result empty regions don't get restored - this is the case in a fresh install (which is how I discovered this) with no user table.
> Modifying the code to set exists IF isSuccessfulScan does not throw an exception worked for me:
> {noformat}
>   for r in regions
>     exists = false
>     begin
>       isSuccessfulScan(admin, r)
>       exists = true
>     rescue org.apache.hadoop.hbase.NotServingRegionException => e
>       $LOG.info("Failed scan of " + e.message)
>     end
> {noformat}

--
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