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

jirapos...@reviews.apache.org commented on HBASE-4377:
------------------------------------------------------



bq.  On 2011-10-07 21:01:16, Ted Yu wrote:
bq.  > src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java, line 302
bq.  > <https://reviews.apache.org/r/2287/diff/1/?file=48780#file48780line302>
bq.  >
bq.  >     Naming rd as rootdir would make the code more readable.

done


bq.  On 2011-10-07 21:01:16, Ted Yu wrote:
bq.  > src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java, line 446
bq.  > <https://reviews.apache.org/r/2287/diff/1/?file=48780#file48780line446>
bq.  >
bq.  >     I think LOG.info() should be used here.

I think it is still a problem, but we are in an ok state.  I've changed it to 
'warn' instead.


bq.  On 2011-10-07 21:01:16, Ted Yu wrote:
bq.  > src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java, line 276
bq.  > <https://reviews.apache.org/r/2287/diff/1/?file=48780#file48780line276>
bq.  >
bq.  >     Minor suggestion: IOException may occur more than once. Would 
logging all such IOException's before bailing out make user experience better ?
bq.  >     Basically we just need to track the last such IOException in a 
variable and bail out at line 283 if the variable isn't null.

Updated to track all IOE's and throw MultipleIOException.


bq.  On 2011-10-07 21:01:16, Ted Yu wrote:
bq.  > src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java, line 346
bq.  > <https://reviews.apache.org/r/2287/diff/1/?file=48780#file48780line346>
bq.  >
bq.  >     I think rebuildMeta() should check the return value from 
generatePuts().
bq.  >     Otherwise we would encounter NPE at line 405 below.

see below


bq.  On 2011-10-07 21:01:16, Ted Yu wrote:
bq.  > src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java, line 407
bq.  > <https://reviews.apache.org/r/2287/diff/1/?file=48780#file48780line407>
bq.  >
bq.  >     false should be returned if puts is null.

So I believe that checkHdfs and loadTableInfo and the error checking happens 
before and bails out after suggestFixes().  But sure, it doesn't really hurt 
here to be event more defensive.


bq.  On 2011-10-07 21:01:16, Ted Yu wrote:
bq.  > src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java, line 378
bq.  > <https://reviews.apache.org/r/2287/diff/1/?file=48780#file48780line378>
bq.  >
bq.  >     Do you plan to add this logic in another JIRA ?

I have a patch that adds this but it is having problems on the trunk side.  I'd 
like to get this in first and then then we'll deal with that next.  New issue 
filed HBASE-4632.


- jmhsieh


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/2287/#review2440
-----------------------------------------------------------


On 2011-10-07 19:04:44, jmhsieh wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/2287/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2011-10-07 19:04:44)
bq.  
bq.  
bq.  Review request for hbase and Ted Yu.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  Backport to 0.90
bq.  
bq.  commit 89862b73c6358e27220b87b0362599d86ab0fe4a
bq.  Author: Jonathan Hsieh <j...@cloudera.com>
bq.  Date:   Wed Sep 28 10:18:11 2011 -0700
bq.  
bq.      HBASE-4377 [hbck] Offline rebuild .META. from fs data only
bq.      
bq.  
bq.  
bq.  This addresses bug HBASE-4377.
bq.      https://issues.apache.org/jira/browse/HBASE-4377
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    src/main/java/org/apache/hadoop/hbase/master/MasterFileSystem.java 
ef246c3 
bq.    src/main/java/org/apache/hadoop/hbase/util/Bytes.java 13ad026 
bq.    src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java b04aab6 
bq.    src/main/java/org/apache/hadoop/hbase/util/hbck/OfflineMetaRepair.java 
PRE-CREATION 
bq.    src/test/java/org/apache/hadoop/hbase/util/TestHBaseFsck.java f792720 
bq.    src/test/java/org/apache/hadoop/hbase/util/hbck/HbckTestingUtil.java 
PRE-CREATION 
bq.    
src/test/java/org/apache/hadoop/hbase/util/hbck/OfflineMetaRebuildTestCore.java 
PRE-CREATION 
bq.    
src/test/java/org/apache/hadoop/hbase/util/hbck/TestOfflineMetaRebuildBase.java 
PRE-CREATION 
bq.    
src/test/java/org/apache/hadoop/hbase/util/hbck/TestOfflineMetaRebuildHole.java 
PRE-CREATION 
bq.    
src/test/java/org/apache/hadoop/hbase/util/hbck/TestOfflineMetaRebuildOverlap.java
 PRE-CREATION 
bq.  
bq.  Diff: https://reviews.apache.org/r/2287/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  Note, the assertion test result is different in the failure cases due to 
HBASE-451 changes. (0.90 returns 0 tables since it does a meta scan on empty 
meta, trunk branch looks at hdfs dirs, and returns 1).
bq.  
bq.  This version passes after HBASE-4508 (backport HBASE-3777 to 0.90 branch) 
is applied. 
bq.  
bq.  I believe if that patch is not applied, I could modify the test code to 
force some explicit HConnection deletions.
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  jmhsieh
bq.  
bq.


                
> [hbck] Offline rebuild .META. from fs data only.
> ------------------------------------------------
>
>                 Key: HBASE-4377
>                 URL: https://issues.apache.org/jira/browse/HBASE-4377
>             Project: HBase
>          Issue Type: New Feature
>            Reporter: Jonathan Hsieh
>            Assignee: Jonathan Hsieh
>         Attachments: 
> 0001-HBASE-4377-hbck-Offline-rebuild-.META.-from-fs-data-.patch, 
> hbase-4377-trunk.v2.patch
>
>
> In a worst case situation, it may be helpful to have an offline .META. 
> rebuilder that just looks at the file system's .regioninfos and rebuilds meta 
> from scratch.  Users could move bad regions out until there is a clean 
> rebuild.  
> It would likely fill in region split holes.  Follow on work could given 
> options to merge or select regions that overlap, or do online rebuilds.

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

        

Reply via email to