hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "stack (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-9117) Remove HTablePool and all HConnection pooling related APIs
Date Sat, 08 Mar 2014 01:31:46 GMT

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

stack commented on HBASE-9117:

bq.  1. warn on connection cache hit (configurable, off by default. 0.98)

What is the above [~ndimiduk]?  Because we are going to undo caching connections?

bq.  2. deprecate all public HTable constructors (0.98)


bq.  3. deprecate ConnectionManager#{delete,get}Connection (0.98)

These should not be public, right, so +1

bq.  4. replace internal ConnectionManager#{delete,get}Connection use with #close, #createConnection
(0.98, 0.99)

Might be a bit radical for 0.98 since it is out but since internal, might be ok.

bq.  5. replace internal HTable constructor use with HConnection#getTable (0.98, 0.99)


bq.  6. delete all public HTable constructors (0.99)

Ugh.  Going by the rule book, there is not be enough deprecation time -- given 0.98.0 has
shipped.  Putting on vendor hat, if 1.0 APIs stray from what is in 0.96, we'll not be able
to ship hbase 1.0 any time soon.

Ditto on #7.

So, I'd be good w/ deprecations on APIs and doing internal moves....

MetaReader stuff, the classes in catalog package are all bogus and should be private inside
client.  Just FYI if you get urge to rip them apart.

I think HTablePool has to stay for 1.0 even though broke.

On managed connections going away, where is the decision or is just the logical endpoint we've
been coming to over years (the start was sometime after [~lhofhansl] showed up first and started
going on about HTablePool being rubbish?)  The Connection setup is heavy, right?  To ZK, and
then to RS.  If a Connection per, is there sharing?

Good on you Nick.  Can we get some of the work in at least?  The first few items in your list?

> Remove HTablePool and all HConnection pooling related APIs
> ----------------------------------------------------------
>                 Key: HBASE-9117
>                 URL: https://issues.apache.org/jira/browse/HBASE-9117
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Lars Hofhansl
>            Assignee: Nick Dimiduk
>            Priority: Critical
>             Fix For: 0.99.0
>         Attachments: HBASE-9117.00.patch, HBASE-9117.01.patch, HBASE-9117.02.patch, HBASE-9117.03.patch,
HBASE-9117.04.patch, HBASE-9117.05.patch, HBASE-9117.06.patch
> The recommended way is now:
> # Create an HConnection: HConnectionManager.createConnection(...)
> # Create a light HTable: HConnection.getTable(...)
> # table.close()
> # connection.close()
> All other API and pooling will be removed.

This message was sent by Atlassian JIRA

View raw message