hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Abhishek Singh Chouhan (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-18796) Admin#isTableAvailable returns incorrect result before daughter regions are opened
Date Mon, 18 Sep 2017 09:45:00 GMT

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

Abhishek Singh Chouhan commented on HBASE-18796:
------------------------------------------------

The same code is there in master's metaTableAccessor. I've included a patch for branch-1 that
fixes the issue and adds a test in TestEndToEndSplitTransaction as well as TestMetaTableAccessor.
For the master patch i've added just the test in TestMetaTableAccessor, due to the procedure
stuff i didn't see any straightforward way to test the behavior of isTableAvailable at a particular
point when the split procedure is executing.

> Admin#isTableAvailable returns incorrect result before daughter regions are opened
> ----------------------------------------------------------------------------------
>
>                 Key: HBASE-18796
>                 URL: https://issues.apache.org/jira/browse/HBASE-18796
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 1.3.1
>            Reporter: Abhishek Singh Chouhan
>            Assignee: Abhishek Singh Chouhan
>         Attachments: HBASE-18796.branch-1.001.patch, HBASE-18796.branch-1.001.patch,
HBASE-18796.branch-1.002.patch, HBASE-18796.branch-1.003.patch, HBASE-18796.master.001.patch
>
>
> Admin#isTableAvailable checks if it can getServerName for the meta entries it reads.
During the time of split server location are added to the meta entries in MetaTableAccessor#splitRegion
although the description of the method says "Does not add the location information to the
daughter regions since they are not open yet.". At this point during the split daughter regions
are not actually open, so we can get to a state where parent is offline, daughters are not
yet open but isTableAvailable returns true.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message