hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Enis Soztutar (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-5986) Clients can see holes in the META table when regions are being split
Date Fri, 11 May 2012 00:03:49 GMT

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

Enis Soztutar commented on HBASE-5986:
--------------------------------------

Possible fixes I can think of: 
1. Keep MetaScanner/MetaReader as non-consistent (as it is), but allow for a consistent view
for getting table regions. Since single row puts are atomic, when the parent region is mutated
to be offline, the HRI for daughters are added to the row. So on MetaScanner.allTableRegions
and similar calls, we can keep track of daughter regions from split parents and return them
to the client. 
2. Make MetaScanner consistent, in that, whenever it sees a split parent, it blocks until
the daughters are available. 
3. We have region-local transactions now, so if we ensure that the rows for parent and daughters
will be served from the same META region, then we can update all three rows atomically. Maybe
we can come up with a META-specific split policy to ensure split-regions go to the same META
region. 
Thoughts? 
                
> Clients can see holes in the META table when regions are being split
> --------------------------------------------------------------------
>
>                 Key: HBASE-5986
>                 URL: https://issues.apache.org/jira/browse/HBASE-5986
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.92.1, 0.96.0, 0.94.1
>            Reporter: Enis Soztutar
>            Assignee: Enis Soztutar
>         Attachments: HBASE-5986-test_v1.patch
>
>
> We found this issue when running large scale ingestion tests for HBASE-5754. The problem
is that the .META. table updates are not atomic while splitting a region. In SplitTransaction,
there is a time lap between the marking the parent offline, and adding of daughters to the
META table. This can result in clients using MetaScanner, of HTable.getStartEndKeys (used
by the TableInputFormat) missing regions which are made just offline, but the daughters are
not added yet. 
> This is also related to HBASE-4335. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message