[
https://issues.apache.org/jira/browse/HBASE-16093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15362813#comment-15362813
]
Andrew Purtell commented on HBASE-16093:
----------------------------------------
I concur. I can look at backporting the change in this patch.
> Splits failed before creating daughter regions leave meta inconsistent
> ----------------------------------------------------------------------
>
> Key: HBASE-16093
> URL: https://issues.apache.org/jira/browse/HBASE-16093
> Project: HBase
> Issue Type: Bug
> Components: master, Region Assignment
> Affects Versions: 1.3.0, 1.2.1
> Reporter: Elliott Clark
> Assignee: Elliott Clark
> Priority: Critical
> Fix For: 1.3.0, 1.4.0, 1.2.2, 1.1.6
>
> Attachments: HBASE-16093.branch-1.patch
>
>
> This is on branch-1 based code only.
> Here's the sequence of events.
> # A regionserver opens a new region. That regions looks like it should split.
> # So the regionserver starts a split transaction.
> # Split transaction starts execute
> # Split transaction encounters an error in stepsBeforePONR
> # Split transaction starts rollback
> # Split transaction notifies master that it's rolling back using
> HMasterRpcServices#reportRegionStateTransition
> # AssignmentManager#onRegionTransition is called with SPLIT_REVERTED
> # AssignmentManager#onRegionSplitReverted is called.
> # That onlines the parent region and offlines the daughter regions.
> However the daughter regions were never created in meta so all that gets done
> is that state for those rows gets OFFLINE. Now all clients trying to get the
> parent instead get the offline daughter.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)