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