[ 
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
(v6.2#6252)

Reply via email to