You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Nick Dimiduk (JIRA)" <ji...@apache.org> on 2016/07/01 17:20:11 UTC

[jira] [Commented] (HBASE-16093) Splits failed before creating daughter regions leave meta inconsistent

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

Nick Dimiduk commented on HBASE-16093:
--------------------------------------

I'm nervous to commit AM changes to maintenance release lines without a test. [~eclark] you folks have a unit or IT that can repro this reliably?

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