You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Enis Soztutar (JIRA)" <ji...@apache.org> on 2014/06/28 03:49:34 UTC
[jira] [Updated] (HBASE-10810) LoadTestTool should share the
connection and connection pool
[ https://issues.apache.org/jira/browse/HBASE-10810?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Enis Soztutar updated HBASE-10810:
----------------------------------
Attachment: 0038-HBASE-10810-LoadTestTool-should-share-the-connection.patch
> LoadTestTool should share the connection and connection pool
> ------------------------------------------------------------
>
> Key: HBASE-10810
> URL: https://issues.apache.org/jira/browse/HBASE-10810
> Project: HBase
> Issue Type: Sub-task
> Reporter: Enis Soztutar
> Assignee: Enis Soztutar
> Fix For: hbase-10070
>
> Attachments: 0038-HBASE-10810-LoadTestTool-should-share-the-connection.patch, hbase-10810_v1.patch
>
>
> While running the IT test from HBASE-10572, we've noticed that the number of threads jumps to 4K's when CM actions are going on.
> Our [~ndimiduk] summarizes the problem quite good:
> MultiThreadedReader creates this pool for each HTable:
> {code}
> ThreadPoolExecutor pool = new ThreadPoolExecutor(1, maxThreads, keepAliveTime, TimeUnit.SECONDS,
> new SynchronousQueue<Runnable>(), Threads.newDaemonThreadFactory("htable"));
> {code}
> This comes from the HTable creation
> {code}
> public HTable(Configuration conf, final TableName tableName)
> {code}
> As well the javadoc says Recommended.
> This is wrong.
> In this issue we can change the LTT sub classes to use the shared connection object and initialize their tables using HConnection.getTable() rather than new HTable().
> This is relevant to trunk as well, but there since there is only one outstanding RPC per thread, it is not such a big problem.
--
This message was sent by Atlassian JIRA
(v6.2#6252)