[ https://issues.apache.org/jira/browse/HBASE-12597?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14238687#comment-14238687 ]
stack commented on HBASE-12597: ------------------------------- Just to say that I committed and then had to revert because I put it in w/ wrong commit message. Here is what I did (two commits, two reverts, and then a final commit) {code} commit a8e646185569ac121993c49cea0cfebfadac1b5c Author: Jurriaan Mous <jurm...@jurmo.us> Date: Sat Dec 6 13:29:15 2014 +0100 HBASE-12597 Signed-off-by: stack <st...@apache.org> commit 1a27cb7b0ff2194567b04ea5076df47b8128aca3 Author: stack <st...@apache.org> Date: Mon Dec 8 15:35:50 2014 -0800 Revert "HBASE-12597 Add RpcClient interface and enable changing of RpcClient implementation (Jurriaan Mous)" Revert partial commit of HBASE-12597 This reverts commit 4be2034a26020f16faa85937195710a50c0aa1bf. commit b8ab1b176cfa6e5898f6aedea3c2d7af1fa92675 Author: stack <st...@apache.org> Date: Mon Dec 8 15:34:53 2014 -0800 Revert "HBASE-12558 TestHCM.testClusterStatus Unexpected exception, expected<org.apache.hadoop.hbase.regionserver.RegionServerStoppedException> but was<junit.framework.AssertionFailedError> -- ADDED DEBUG" Accidental commit. Reverting. This reverts commit 2458be08ed894c33bea48983e3fe390dbbb0fe28. commit 4be2034a26020f16faa85937195710a50c0aa1bf Author: stack <st...@apache.org> Date: Mon Dec 8 15:13:50 2014 -0800 HBASE-12597 Add RpcClient interface and enable changing of RpcClient implementation (Jurriaan Mous) commit 2458be08ed894c33bea48983e3fe390dbbb0fe28 Author: stack <st...@apache.org> Date: Mon Dec 8 15:04:59 2014 -0800 HBASE-12558 TestHCM.testClusterStatus Unexpected exception, expected<org.apache.hadoop.hbase.regionserver.RegionServerStoppedException> but was<junit.framework.AssertionFailedError> -- ADDED DEBUG {code} > Add RpcClient interface and enable changing of RpcClient implementation > ----------------------------------------------------------------------- > > Key: HBASE-12597 > URL: https://issues.apache.org/jira/browse/HBASE-12597 > Project: HBase > Issue Type: Improvement > Components: Client > Reporter: Jurriaan Mous > Assignee: Jurriaan Mous > Fix For: 1.0.0, 2.0.0 > > Attachments: HBASE-12597-v1.patch, HBASE-12597-v2.patch, > HBASE-12597-v3.patch, HBASE-12597-v4.patch, HBASE-12597-v4.patch, > HBASE-12597-v5.patch, HBASE-12597-v6.patch, HBASE-12597-v7.patch, > HBASE-12597-v8-branch-1.patch, HBASE-12597-v8.patch, HBASE-12597.patch > > > Currently HConnectionImplementation works with the included RpcClient which > is a direct implementation and not defined by an interface. > It would be great to be able to swap out the default RpcClient with another > implementation which can also be controlled by the default > HConnectionImplementation. > Suggested changes: > - Create a RpcClient interface which defines all the ways > HConnectionImplementation interacts with an RPC client. Like getting a > blocking protobuf service interface or closing the client. > - Define which RpcClient implementation to construct by setting a > configuration variable which defaults to the current RpcClient. > - Possibly create an abstract RpcClient class to only load all the basic Rpc > layer configurations to be used in an implementation. > Why? It enables experimentation with RpcClients which could enable new > features or could be more performant than the included client. > I created a new RpcClient implementation based on Netty which can also be > called asynchronously. It would be great to also be able to use this > RpcClient in all the default ways and tests to see if there are any issues > with it. > https://github.com/jurmous/async-hbase-client/ > https://github.com/jurmous/async-hbase-client/blob/master/src/main/java/org/apache/hadoop/hbase/ipc/AsyncRpcClient.java -- This message was sent by Atlassian JIRA (v6.3.4#6332)