[
https://issues.apache.org/jira/browse/HBASE-8218?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13625093#comment-13625093
]
cuijianwei commented on HBASE-8218:
-----------------------------------
Maybe, we can add HConnection and ExecutorService as members of
AggregationClient. Then, we can invoke constructor: {code} public
HTable(final byte[] tableName, final HConnection connection, final
ExecutorService pool) throws IOException {code} to construct a HTable in each
method. The current signatures won't change, and this constructor of HTable is
lighter because we don't need to construct new HConnection and ExecutorService.
However, we need a close() method for user to close HConnection and
ExecutorService.
> pass HTable as a parameter to method of AggregationClient
> ---------------------------------------------------------
>
> Key: HBASE-8218
> URL: https://issues.apache.org/jira/browse/HBASE-8218
> Project: HBase
> Issue Type: Improvement
> Components: Client, Coprocessors
> Affects Versions: 0.94.3
> Reporter: cuijianwei
>
> In AggregationClient, methods such as max(...), min(...) pass 'tableName' as
> a parameter, then a HTable will be created in the method, before the method
> return, the created HTable will be closed.
> The process above may be heavy because each call must create and close a
> HTable. The situation becomes worse when there is only one thread access
> HBase using AggregationClient. The underly HConnection of created HTable will
> also be created and then closed each time when we invoke these method because
> no other HTables using the HConnection. This operation is heavy. Therefore,
> can we add another group of methods which pass HTable or HTablePool as a
> parameter to methods defined in AggregationClient?
--
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