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

stack commented on HBASE-12684:
-------------------------------

bq. Besides delivering a new AsyncRpcClient I would also like to ask the 
question what it would take to replace the current RpcClient?

Faster, cleaner, and more maintainable than what we currently have. I'd say if 
there was a strong signal along any of these dimensions, we'd be up for 
replacement (as long as no regression on the other vectors).

bq. Will RpcClientImpl live on after this issue or should RpcClientImpl be 
removed with the arrival of AsyncRpcClient? This question affects what work is 
to be done next.

We shoud ask out on the dev list but one scenario would have the master branch 
switch to new async client wholesale if it could do what the old client did 
(w/o significant regression and preferably with obvious improvement over what 
was there previous) but folks would sleep easier if the old client could live 
on a while and its removal happened down the road after the new client had 
proven its worth a while.  For 1.x, we'll be conservative about a wholesale 
change (It could happen but preferably, folks could have choice between the old 
and new with the old the default).

On a quick review of your patch, it looks a lot like the old client (smile) 
except for nice stuff doing callback.  At this low level, I would suggest you 
do whats natural for netty and async'ing and not worry too much about code dup 
(minimize if you can but I'd imagine the 'flow' and 'shape' of the client at 
this level will want to differ from what we currently have and your hands will 
be full just trying to ensure you get to parity)


> Add new AsyncRpcClient
> ----------------------
>
>                 Key: HBASE-12684
>                 URL: https://issues.apache.org/jira/browse/HBASE-12684
>             Project: HBase
>          Issue Type: Improvement
>          Components: Client
>            Reporter: Jurriaan Mous
>            Assignee: Jurriaan Mous
>         Attachments: HBASE-12684.patch
>
>
> With the changes in HBASE-12597 it is possible to add new RpcClients. This 
> issue is about adding a new Async RpcClient which would enable HBase to do 
> non blocking protobuf service communication.
> Besides delivering a new AsyncRpcClient I would also like to ask the question 
> what it would take to replace the current RpcClient? This would enable to 
> simplify async code in some next issues.



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

Reply via email to