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

stack commented on HBASE-7721:
------------------------------

bq. Do you remember why we have disabled META splits in the first place?

Because I remember our buddy Cosmin found it didn't work and for a while we 
swore we'd fix it and then a few folks got burned by it not working so (Todd 
IIRC) just disabled it till it got fixed... which has still to happen.

Removing -ROOT- should happen first.   Then .META. location would be in zk.   
Later, if we could split, could keep all region locations in zk and let the 
client sort the list it gets from zk.

Splitting .META. would be good to have; distribute the load and mitigate the 
case where regionserver carrying the single .META. goes down.
                
> Local Transactions in META
> --------------------------
>
>                 Key: HBASE-7721
>                 URL: https://issues.apache.org/jira/browse/HBASE-7721
>             Project: HBase
>          Issue Type: Improvement
>          Components: Coprocessors, regionserver
>            Reporter: Enis Soztutar
>            Assignee: Enis Soztutar
>             Fix For: 0.96.0
>
>
> Thanks to Lars' local transactions patch (HBASE-5229), we can entertain the 
> possibility of doing local transactions within META regions.
> We need this mainly for region splits and merges. Clients scan the META 
> concurrent to the split/merge operations, and to prevent the clients from 
> seeing overlapping region boundaries or holes in META, we just through hoops. 
> For more backgroun, see BlockingMetaScannerVisitor, HBASE-5986, and my 
> comments at https://reviews.apache.org/r/8716/. 
> Now, for the actual implementation options: 
>  1. As outlined in http://hadoop-hbase.blogspot.com/2012_02_01_archive.html, 
>    - We have to implement a Custom RegionSplitPolicy for the META regions to 
> ensure that a table's regions are always co-located in the same META region. 
> Then we can add MultiRowMutationEndpoint as a system level coprocessor, and 
> use it for META operations. 
>  2. Do smt like HBASE-7716, and expose local atomic multi-row operations as a 
> native API.
>  3. Move META to zookeeper. Use zookeeper.multi.  
> Then we can change region split / merge logic to make use of atomic META 
> operations. 
> Thoughts, suggestions? 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to