[
https://issues.apache.org/jira/browse/HBASE-8590?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Enis Soztutar resolved HBASE-8590.
----------------------------------
Resolution: Fixed
Hadoop Flags: Reviewed
Thanks Lars for taking a look. I've committed this to 0.94.
> [0.94] BlockingMetaScannerVisitor should check for parent meta entry while
> waiting for split daughter
> -----------------------------------------------------------------------------------------------------
>
> Key: HBASE-8590
> URL: https://issues.apache.org/jira/browse/HBASE-8590
> Project: HBase
> Issue Type: Bug
> Components: regionserver
> Reporter: Enis Soztutar
> Assignee: Enis Soztutar
> Fix For: 0.94.9
>
> Attachments: hbase-8590_v1.patch
>
>
> This was discovered after HBASE-8505 went in, which introduces a test
> sporadically triggering this bug.
> From comments at HBASE-8505:
> From the logs at
> https://builds.apache.org/job/HBase-0.94-security/ws/trunk/target/surefire-reports/org.apache.hadoop.hbase.client.TestMetaScanner-output.txt,
> I think I understand what is going on:
> BlockingMetaScannerVisitor blocks and wait for the split daughter to appear
> when it sees a parent region (HBASE-5986). CatalogJanitor on the other hand
> will order the regions in a (kind-of) topological sort (based on parent child
> relation) so that it will guarantee parents are not GC'd before daughters.
> What is happening in this issue is not related to the patch in this jira, but
> the test triggers this extremely rare case by running concurrent
> catalogjanitor, splits and metascanners. We have parent, splita and splitb
> regions, and catalogjanitor decides to delete parent first and splitb in one
> run. While there is a concurrent metascanner which will go over the parent,
> and sees that it is split, but before being able to read the split daughter,
> catalog janitor will delete both the parent and the child, which will lead to
> metascanner blocking until timeout and failing the test.
> On solution might be to also check whether the parent is still there in
> BlockingMetaScannerVisitor while we are blocking for the daughter.
> Good thing is that with HBASE-7721, we don't need any of this in trunk.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira