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

stack commented on HBASE-16991:
-------------------------------

What do I think? You are the two fellows w/ active 'customers' that you need to 
keep happy. I can give an opinion but I think yours would carry more weight so 
I defer to you fellows.

Here is my opinion since you asked for it. Singletons are evil (smile). 
SingletonAsyncConnection has an ugly name but it is excellent illustrative code 
of how you might keep around a reference to a Connection in your app. How about 
for now adding this class to the connection factory class javadoc as an example 
on how you might keep around your async connection? It does not have to go in 
as part of this patch. We might add it later after we've figured out more about 
how to make use of the async connection?

bq. I suggest you guys also introduce a thin layer on top of the hbase client 
to do the connection caching work.

Can we try and make it so hbase has this thin layer if possible so everyone 
doesn't have to build it (follow on issue).

On patch...

What is removal of ClusterRegistryFactory about? It was added by mistake 
superceded by AsyncRegistryFactory?

Do you want to make it more clear that Connection creation is expensive and 
that app should therefore try and cache them in the javadoc somewhere around 
here?

35       * A non-instantiable class that manages creation of {@link 
Connection}s. Managing the lifecycle of
36       * the {@link Connection}s to the cluster is the responsibility of the 
caller. From a
37       * {@link Connection}, {@link Table} implementations are retrieved with
38       * {@link Connection#getTable(TableName)}. Example:

Do we need to test that Connection keeps working across Cluster restarts? That 
it is resilient?



> Make the initialization of AsyncConnection asynchronous
> -------------------------------------------------------
>
>                 Key: HBASE-16991
>                 URL: https://issues.apache.org/jira/browse/HBASE-16991
>             Project: HBase
>          Issue Type: Sub-task
>          Components: Client
>    Affects Versions: 2.0.0
>            Reporter: Duo Zhang
>            Assignee: Duo Zhang
>            Priority: Minor
>             Fix For: 2.0.0
>
>         Attachments: HBASE-16991-v1.patch, HBASE-16991.patch
>
>
> Now the ConnectionFactory.createAsyncConnection is still blocking. We should 
> make it return a CompletableFuture to make the async client fully 
> asynchronous.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to