You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Andrew Kyle Purtell (Jira)" <ji...@apache.org> on 2022/06/14 22:08:00 UTC

[jira] [Resolved] (HBASE-7013) Avoid reusing a input stream that stumbles on rpc-timeout in HBaseClient

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

Andrew Kyle Purtell resolved HBASE-7013.
----------------------------------------
    Resolution: Not A Problem

> Avoid reusing a input stream that stumbles on rpc-timeout in HBaseClient
> ------------------------------------------------------------------------
>
>                 Key: HBASE-7013
>                 URL: https://issues.apache.org/jira/browse/HBASE-7013
>             Project: HBase
>          Issue Type: Bug
>          Components: Client
>            Reporter: Hiroshi Ikeda
>            Priority: Critical
>              Labels: delete
>
> HBASE-2937 introduces rpc-timeout and sets SO_TIMEOUT parameter of the socket to throw SocketTimeoutException. That means the exception can be thrown from any code that reads data directly/indirectly from the socket. If the exception is thrown in the middle of reading a set of data, it is required to drag out and drop the rest part of the set of data from the socket and make ready to read the next data, in order to reuse the socket. It seems difficult, and I can't find such recovering code in HBaseClient.
> I think, when IO streams wrapping the socket throw an exception, the nesting connection instance should be discarded, and rpc-timeout should be handled separately from SO_TIMEOUT parameter.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)