You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Ted Yu (JIRA)" <ji...@apache.org> on 2012/12/01 02:33:58 UTC

[jira] [Commented] (HBASE-6580) New HTable pool, based on HBase(byte[], HConnection, ExecutorService) constructor

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

Ted Yu commented on HBASE-6580:
-------------------------------

For HConnection.java, please add javadoc for tableName parameter.
{code}
+    // thread executor shared by all HTableInterface instances created
+    // by this connection
{code}
nit: 'created by' -> 'created from'
{code}
+       } catch (InterruptedException e) {
+         this.hTableExecutor.shutdownNow();
+       }
{code}
Please restore interrupt status above.
{code}
+     if (hTableExecutor == null) {
+       // shared HTable thread executor not yet initialized
+       synchronized (this) {
+         if (hTableExecutor == null) {
{code}
Why use double checked locking ? Connection would be used to create (at least) one table, right ?

                
> New HTable pool, based on HBase(byte[], HConnection, ExecutorService) constructor
> ---------------------------------------------------------------------------------
>
>                 Key: HBASE-6580
>                 URL: https://issues.apache.org/jira/browse/HBASE-6580
>             Project: HBase
>          Issue Type: Improvement
>    Affects Versions: 0.92.2, 0.94.2
>            Reporter: Lars Hofhansl
>            Priority: Minor
>         Attachments: HBASE-6580_v1.patch, HBASE-6580_v2.patch
>
>
> Here I propose a very simple TablePool.
> It could be called LightHTablePool (or something - if you have a better name).
> Internally it would maintain an HConnection and an Executor service and each invocation of getTable(...) would create a new HTable and close() would just close it.
> In testing I find this more light weight than HTablePool and easier to monitor in terms of resources used.
> It would hardly be more than a few dozen lines of code.

--
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