[ https://issues.apache.org/jira/browse/HBASE-4805?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13152231#comment-13152231 ]
Lars Hofhansl commented on HBASE-4805: -------------------------------------- Actually closing a closed HTable is no-op: {code} public void close() throws IOException { if (this.closed) { return; } ... this.closed = true; } {code} > Allow better control of resource consumption in HTable > ------------------------------------------------------ > > Key: HBASE-4805 > URL: https://issues.apache.org/jira/browse/HBASE-4805 > Project: HBase > Issue Type: Bug > Components: client > Affects Versions: 0.92.0, 0.94.0 > Reporter: Lars Hofhansl > Assignee: Lars Hofhansl > Fix For: 0.92.0, 0.94.0 > > Attachments: 4805-v2.txt, 4805-v3.txt, 4805.txt > > > From some internal discussions at Salesforce we concluded that we need better > control over the resources (mostly threads) consumed by HTable when used in a > AppServer with many client threads. > Since HTable is not thread safe, the only options are cache them (in a custom > thread local or using HTablePool) or to create them on-demand. > I propose a simple change: Add a new constructor to HTable that takes an > optional ExecutorService and HConnection instance. That would make HTable a > pretty lightweight object and we would manage the ES and HC separately. > I'll upload a patch a soon to get some feedback. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira