[ 
https://issues.apache.org/jira/browse/HBASE-12684?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jurriaan Mous updated HBASE-12684:
----------------------------------
    Attachment: HBASE-12684-v7.patch

New patch.
- Moved to EnvironmentEdgeManager
- Better connection cancellation and closing code. Was preventing tests to pass.
- Rolled back BlockingRpcChannelImplementation since it was needed for failing 
connections to reconnect to a new RpcChannel. So could not be in Channel 
itself...
- Better promise handling. No more double calls.

TestEndToEndSplitTransaction kept failing for me since it created too much new 
Connection instances and thus AsyncRpcClients. AsyncRpcClient seems to be 
heavier than RpcClientImpl. I opened a new issue which should solve this issue 
by making MetaScanner reuse existing connections. 
HBASE-12736
(All those new HTable which create Connections themselves should also be moved 
to Connection.getTable to be more efficient)

[~tedyu] It is inside the operationComplete method which should return by 
itself. So it seems redundant to add. Or am I missing something? 
And thanks for the EnvironmentEdgeManager tip which I fixed. :)

> 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-v1.patch, HBASE-12684-v2.patch, 
> HBASE-12684-v3.patch, HBASE-12684-v4.patch, HBASE-12684-v5.patch, 
> HBASE-12684-v6.patch, HBASE-12684-v7.patch, 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