[
https://issues.apache.org/jira/browse/HBASE-13678?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Junheng Gong updated HBASE-13678:
---------------------------------
Description:
When batch get some data from cluster, the client will block some threads base
on region server amount
In code client use Future.get block a thread for each related region servers
and wait them finish one by one.
In our case we have 12 region servers, so most of time the client will cost 12
threads for a batch get, if we have many concurrent request it will OOM by can
not create native threads.
I suggest we use some kind async or call back to process region server's
response.
was:
when batch get some data from cluster, the client will block some threads base
on region server amount
In code client use Future.get block a thread for each related region servers
and wait them finish one by one.
In our case we have 12 region servers, so most of time the client will cost 12
threads for a batch get, if we have many concurrent request it will OOM by can
not create native threads.
I suggest we use some kind async or call back to process region server's
response.
> Hbase client block on region call back
> --------------------------------------
>
> Key: HBASE-13678
> URL: https://issues.apache.org/jira/browse/HBASE-13678
> Project: HBase
> Issue Type: Bug
> Affects Versions: 0.94.15
> Environment: CentOS 6.4 scala 2.11/java 1.7
> Reporter: Junheng Gong
>
> When batch get some data from cluster, the client will block some threads
> base on region server amount
> In code client use Future.get block a thread for each related region servers
> and wait them finish one by one.
> In our case we have 12 region servers, so most of time the client will cost
> 12 threads for a batch get, if we have many concurrent request it will OOM by
> can not create native threads.
> I suggest we use some kind async or call back to process region server's
> response.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)