[ https://issues.apache.org/jira/browse/HBASE-18078?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16025824#comment-16025824 ]
Xiaobing Zhou commented on HBASE-18078: --------------------------------------- Coming next are: # apply the APIs (e.g. ConnectionFactory and ConnectionPool) changes to all related places. # In order to simulate various abnormal behaviors, it necessitates building a TestRpcServer, which can be started from samples in [BootstrapTest|https://github.com/facebook/wangle/blob/master/wangle/bootstrap/BootstrapTest.cpp] # handle other abnormal cases such as defined in folly::AsyncSocketException {code} class AsyncSocketException : public std::runtime_error { public: enum AsyncSocketExceptionType { UNKNOWN = 0, NOT_OPEN = 1, ALREADY_OPEN = 2, TIMED_OUT = 3, END_OF_FILE = 4, INTERRUPTED = 5, BAD_ARGS = 6, CORRUPTED_DATA = 7, INTERNAL_ERROR = 8, NOT_SUPPORTED = 9, INVALID_STATE = 10, SSL_ERROR = 12, COULD_NOT_BIND = 13, SASL_HANDSHAKE_TIMEOUT = 14, NETWORK_ERROR = 15 }; {code} # add unit tests to cover them. > [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 > > > 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.3.15#6346)