[ 
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

Reply via email to