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

binlijin commented on HBASE-19290:
----------------------------------

bq. Please add a short commit message explaining 'idea' of the change (makes 
reviewing easy then having to reverse engineer the 'idea')
Add the idea in description.
bq. grabTask only returns 0 or 1. Use boolean please.
OK.
bq. Add @return comment to grabTask.
OK.
bq. We probably don't need {{if (taskGrabed == 0 && !shouldStop) }}, 
taskReadySeq.wait is indefinite wait on availability of next task.
taskReadySeq.wait may not execute because it have condition. 
bq. Can we pull the while loop one level outside and share the 
if(calculateAvailableSplitters(..)) condition.
OK.

> Reduce zk request when doing split log
> --------------------------------------
>
>                 Key: HBASE-19290
>                 URL: https://issues.apache.org/jira/browse/HBASE-19290
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: binlijin
>            Assignee: binlijin
>         Attachments: HBASE-19290.master.001.patch, 
> HBASE-19290.master.002.patch
>
>
> We observe once the cluster has 1000+ nodes and when hundreds of nodes abort 
> and doing split log, the split is very very slow, and we find the 
> regionserver and master wait on the zookeeper response, so we need to reduce 
> zookeeper request and pressure for big cluster.
> (1) Reduce request to rsZNode, every time calculateAvailableSplitters will 
> get rsZNode's children from zookeeper, when cluster is huge, this is heavy. 
> This patch reduce the request. 
> (2) When the regionserver has max split tasks running, it may still trying to 
> grab task and issue zookeeper request, we should sleep and wait until we can 
> grab tasks again.  



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to