[
https://issues.apache.org/jira/browse/HBASE-7477?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13547491#comment-13547491
]
stack edited comment on HBASE-7477 at 1/9/13 4:26 AM:
------------------------------------------------------
Note to self (comes of a review of what would be involved pulling the proxy
stuff out of hbase with Elliott):
+ we'd need a means of hooking up a generic "callMethod" that took a Method and
params with a protocol Interface -- what proxy does for us now. The protobuf
Service can do this for us also but w/o reflection.
+ What we have currently where we have protobuf engine pollution in the
HBaseClient -- though this latter class is supposed to be engine agnostic -- is
ugly and hard to follow.
Given the above, protobuf Service starts to look better. It has kinks but
would enforce a strong pattern -- and we are most of the way there already with
our use of the Service#BlockingInterface.
was (Author: stack):
Note to self (comes of a review of what would be involved pulling the proxy
stuff out of hbase with Elliott):
+ we'd need a means of hooking up a generic "callMethod" that took a Method and
params with a protocol Interface -- what proxy does for us now. The protobuf
Service does this for us.
+ What we have currently where we have protobuf engine pollution in the
HBaseClient -- though this latter class is supposed to be engine agnostic -- is
ugly.
Given this, protobuf Service starts to look good. Has kinks but would enforce
a strong pattern -- and we are most of the way there already with our use of
the Service#BlockingInterface.
> Remove Proxy instance from HBase RPC
> ------------------------------------
>
> Key: HBASE-7477
> URL: https://issues.apache.org/jira/browse/HBASE-7477
> Project: HBase
> Issue Type: Sub-task
> Reporter: Karthik Ranganathan
>
> Currently, we use HBaseRPC.getProxy() to get an Invoker object to serialize
> the RPC parameters. This is pretty inefficient as it uses reflection to
> lookup the current method name.
> The aim is to break up the proxy into an actual proxy implementation so that:
> 1. we can make it more efficient by eliminating reflection
> 2. can re-write some parts of the protocol to make it even better
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira