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

Duo Zhang commented on HBASE-11288:
-----------------------------------

{quote}
I see in your solution is root a table like meta table would the code paths be 
more or less the same? Would we be able to apply generalized solutions for both 
or would they be different code paths? Are these changes in the splittable-meta 
branch?
{quote}

Ahha, so you never looked at my patch, but then made a statement that my patch 
is 'specialized', while your patch is 'generalized'.

Well, let me explain to you so you could save some time.

First, we already have a master local region, for storing the procedure data. 
We could just add another family to it, for storing the root 'table'. It 
requires less code and less complexities comparing to your 'general root 
table'. As we do not need to introduce new InitRootProcedure, do not need to 
modify WALFactory to add a special WALProvider for root table, and also do not 
need to modify SCP to deal with the specialized WAL file for root table. And 
since it is a region, we can reuse most of the code for accessing meta. You can 
see the code in RegionStateStore, only at the last step we need to determine 
whether we should go to the root region or the meta table.

Second, on distributing the load of root table, we are reusing the framework 
introduced by HBASE-18095. As I said before many times, this is not a 
'specialized' solution. And if consider the information in root as the 
'bootstrap' information, it is very natural to use this solution. And now, we 
are actually building a 'specialized' read replica implementation for meta 
table, as we can not make use of the replication framework to spread the data 
of meta table. We are stilling discussing, please see HBASE-18070 for more 
details. Anyway, if this can be done, you can reuse this framework to 
distributed the load, but I could also make use of the framework in HBASE-18095 
to distributed the load. And what's more, HBASE-18095 has already been done, 
and you can see the PR for HBASE-24459, after refactoring, we only need 130+ 
more lines of code to support distrbuting the load of root, and the solution is 
also straigt-forward.

Do you have any other concerns? [~toffer].

Thanks.

> Splittable Meta
> ---------------
>
>                 Key: HBASE-11288
>                 URL: https://issues.apache.org/jira/browse/HBASE-11288
>             Project: HBase
>          Issue Type: Umbrella
>          Components: meta
>            Reporter: Francis Christopher Liu
>            Assignee: Francis Christopher Liu
>            Priority: Major
>         Attachments: jstack20200807_bad_rpc_priority.txt, root_priority.patch
>
>




--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to