hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-15125) HBaseFsck's adoptHdfsOrphan function creates region with wrong end key boundary
Date Thu, 21 Jan 2016 04:43:40 GMT

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

Anoop Sam John commented on HBASE-15125:
----------------------------------------

Reading adoptHdfsOrphan() method seems the end key calc itself is not accurate. We find the
largest key in all HFiles. And add [0] seems ok in that respect.  Still the largest key in
all HFiles need not be the real end key. (Which should be the begin key of next coming region).
 Am not sure whether remaining steps in the HBCK handle this as region hole.  Also do we need
any special handling for the last region? When the orphan region comes out as last.

> HBaseFsck's adoptHdfsOrphan function creates region with wrong end key boundary
> -------------------------------------------------------------------------------
>
>                 Key: HBASE-15125
>                 URL: https://issues.apache.org/jira/browse/HBASE-15125
>             Project: HBase
>          Issue Type: Bug
>          Components: hbck
>    Affects Versions: 2.0.0
>            Reporter: chenrongwei
>            Assignee: chenrongwei
>         Attachments: HBASE-15125-V001.patch, HBASE-15125-v002.patch, HBASE-15125-v003.patch,
HBASE-15125-v004.patch
>
>
> There is a bug in HBaseFsck's adoptHdfsOrphan function.At the last of this function will
create a region,which want to cover all the orphan regions.But the end key of this new region
was set incorrectly.Correct region's boundary should be [startKey,endKey),but this function
create a region with boundary of [startKey,endKey],this bug will leads to scan operation omit
some data.
> I think we should create the region like bellow,
>     // create new region on hdfs. move data into place.
>     HRegionInfo hri = new HRegionInfo(template.getTableName(), orphanRegionRange.getFirst(),
>         Bytes.add(orphanRegionRange.getSecond(), new byte[1]));



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message