[ 
https://issues.apache.org/jira/browse/HBASE-18078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16114894#comment-16114894
 ] 

Xiaobing Zhou commented on HBASE-18078:
---------------------------------------

Thanks for review. v8 is posted.

# removed ConnectionRetryPolicy comment
# used VLOG(3) for RpcClient Exception

In addition:
# added socketNotOpen function in test_rpc_service.proto
# added unit tests for socketNotOpen

In RpcClient::SendRequest, we need to handle two cases for ConnectionException:
 # The first time connection establishment, i.e. GetConnection(remote_id), 
AsyncSocketException being a cause.
# Writing request down the pipeline, i.e. RpcConnection::SendRequest, 
AsyncSocketException being a cause as well.

The socketNotOpen covers the case of GetConnection(remote_id). Another test is 
needed to cover RpcConnection::SendRequest.

> [C++] Harden RPC by handling various communication abnormalities
> ----------------------------------------------------------------
>
>                 Key: HBASE-18078
>                 URL: https://issues.apache.org/jira/browse/HBASE-18078
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Xiaobing Zhou
>            Assignee: Xiaobing Zhou
>         Attachments: HBASE-18078.000.patch, HBASE-18078.001.patch, 
> HBASE-18078.002.patch, HBASE-18078.003.patch, HBASE-18078.004.patch, 
> HBASE-18078.005.patch, HBASE-18078.006.patch, HBASE-18078.007.patch, 
> HBASE-18078.008.patch
>
>
> RPC layer should handle various communication abnormalities (e.g. connection 
> timeout, server aborted connection, and so on). Ideally, the corresponding 
> exceptions should be raised and propagated through handlers of pipeline in 
> client.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to