hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Devaraj Das (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HBASE-11261) Handle splitting of regions that have region_replication greater than one
Date Wed, 11 Jun 2014 01:11:05 GMT

     [ https://issues.apache.org/jira/browse/HBASE-11261?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Devaraj Das updated HBASE-11261:

    Attachment: 11261-1.1.txt

This patch is WIP - needs some cleanup and some tests. But good for review. W.r.t replicas,
the end goal is to have the right number of daughter replicas created and the old parent's
replicas closed. The approach taken is as follows:
1. Parent is split in the RegionServer. 
2. The RegionServer updates the meta with the daughter locations as usual. In addition, for
every daughter location, it also creates one column per daughter replica that references back
to the corresponding parent replica. Clients that refer to the replica of a daughter for reads
are "redirected" to the parent replica. This way availability is there even when new replicas
are getting created as a result of the split process.
3. The master assigns new daughter replicas and closes the old parent replicas. This operation
is done by the master upon getting a ZK notification and during this step the RegionServer
that started the split is still holding the table lock (hence the new daughter replicas would
see the same schema as the primary daughters saw).
4. The CatalogJanitor doesn't delete the rows corresponding to the parents that have daughter
replicas still referring to them (so the redirection in (2) works).
5. When a RegionServer opens a daughter replica, it updates meta with the location (as usual),
but here it also deletes the daughter replica column (back referencing the parent) that was
added in (2). When all the back references are gone (corresponding to the number of daughter
replicas), the   CatalogJanitor would consider the corresponding parent row for deletion.

> Handle splitting of regions that have region_replication greater than one
> -------------------------------------------------------------------------
>                 Key: HBASE-11261
>                 URL: https://issues.apache.org/jira/browse/HBASE-11261
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Devaraj Das
>         Attachments: 11261-1.1.txt

This message was sent by Atlassian JIRA

View raw message