hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "jiraposter@reviews.apache.org (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-4377) [hbck] Offline rebuild .META. from fs data only.
Date Fri, 07 Oct 2011 18:48:32 GMT

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

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


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

(Updated 2011-10-07 18:46:54.806909)


Review request for hbase, Michael Stack and Andrew Purtell.


Changes
-------

Updates with nits and separated tests into different classes so that we can rely on new jvms
to avoid OO file handle errors intermittently encountered when shutting down and restarting
mini clusters.


Summary
-------

commit fbf82c17be6b3ecca5a981f5270cf93aac26e479
Author: Jonathan Hsieh <jon@cloudera.com>
Date:   Wed Sep 28 10:18:11 2011 -0700

    HBASE-4377 [hbck] Offline rebuild .META. from fs data only
    

This patch rebuilds a new .META. table by reading all the .regioninfo files in the hbase main
directory.  It depends on the yet to be committed HBASE-4515 (either my verison or Gary's
version), HBASE-4509, and HBASE-4506.  

Some follow on work includes backporting to 0.90, auto-patching true holes, and adding documentation.


This addresses bug HBASE-4377.
    https://issues.apache.org/jira/browse/HBASE-4377


Diffs (updated)
-----

  src/main/java/org/apache/hadoop/hbase/master/MasterFileSystem.java b9c850d 
  src/main/java/org/apache/hadoop/hbase/util/HBaseFsck.java 154ac32 
  src/main/java/org/apache/hadoop/hbase/util/hbck/OfflineMetaRepair.java PRE-CREATION 
  src/test/java/org/apache/hadoop/hbase/util/TestHBaseFsck.java f5be448 
  src/test/java/org/apache/hadoop/hbase/util/hbck/HbckTestingUtil.java PRE-CREATION 
  src/test/java/org/apache/hadoop/hbase/util/hbck/OfflineMetaRebuildTestCore.java PRE-CREATION

  src/test/java/org/apache/hadoop/hbase/util/hbck/TestOfflineMetaRebuildBase.java PRE-CREATION

  src/test/java/org/apache/hadoop/hbase/util/hbck/TestOfflineMetaRebuildHole.java PRE-CREATION

  src/test/java/org/apache/hadoop/hbase/util/hbck/TestOfflineMetaRebuildOverlap.java PRE-CREATION


Diff: https://reviews.apache.org/r/2126/diff


Testing
-------

An earlier version of this code (backported to 0.90) was used to diagnose and repair a cluster
that had 2700 inconsistencies due to failed splits (the cluster was underprovisioned memory-wise,
and on restart, the some regions would start splitting and then die due to oome's).  This
was not actually used on a live cluster -- it was used to reconstruct a .META. from .regioninfo's
laid out in hbase's directory structure.

Note also that this is not an automatic fix -- whenever any problems are found, this bails
out but dumps info on holes, suggests some fixes, and displays sets of overlapping regions.
 It is up to the user to merge regions, to create .regioninfo files to plug hole, and to do
any potential data loosing operations.

The tests demonstrate current expected behavior -- rebuild meta if things line up, and fail
without making modifications if holes or overlaps exist.


Thanks,

jmhsieh


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

        

Mime
View raw message