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

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


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

Review request for hbase.


Summary
-------

Previous, we'd not clean up a parent if its daughter region didn't exist in the 
fs.  This stipulation was added by HBASE-3872.  This patch undoes this barrier 
to parent cleanup (See  HBASE-3872 for why its ok to do this).

CatalogJanitor

+ Break out the Comparator used by CatalogJanitor.  It was an anonymous class.  
Instead we make it a static inner class so can add test that its actually 
sorting properly.
+ Added method hasNoReferences that will return true if no daughter dir OR no 
refs in daughter dir

Added some TODOs around SplitTransaction -- vaguely related to this patch.

Added new Test that checks cleanParent to ensure it works properly.  Refactored 
bits of previous tests so they use common code.


This addresses bug hbase-4238.
    https://issues.apache.org/jira/browse/hbase-4238


Diffs
-----

  src/main/java/org/apache/hadoop/hbase/master/CatalogJanitor.java b53e9a0 
  
src/main/java/org/apache/hadoop/hbase/master/handler/ServerShutdownHandler.java 
742aea4 
  src/main/java/org/apache/hadoop/hbase/regionserver/SplitTransaction.java 
abafe5e 
  src/test/java/org/apache/hadoop/hbase/master/TestCatalogJanitor.java 78e7d62 

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


Testing
-------


Thanks,

Michael



> CatalogJanitor can clear a daughter that split before processing its parent
> ---------------------------------------------------------------------------
>
>                 Key: HBASE-4238
>                 URL: https://issues.apache.org/jira/browse/HBASE-4238
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.90.4
>            Reporter: Jean-Daniel Cryans
>            Assignee: stack
>            Priority: Critical
>             Fix For: 0.92.0, 0.90.5
>
>         Attachments: 4238-v2.txt, 4238.txt
>
>
> I didn't dig a lot into this issue, but by splitting a table twice in a row I 
> was able to trigger a situation where a daughter of the first split was 
> deleted by the CatalogJanitor before it processed its parent. Will post log 
> in a comment.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to