Bryan Beaudreault created HBASE-27142: -----------------------------------------
Summary: Scanner timeout should take precedence over rpc timeout Key: HBASE-27142 URL: https://issues.apache.org/jira/browse/HBASE-27142 Project: HBase Issue Type: Bug Affects Versions: 2.4.12 Reporter: Bryan Beaudreault In the new async client (see AsyncScanSingleRegionRpcRetryingCaller.call()), we ignore hbase.rpc.timeout for scanner next calls. The reason is: {quote}// As we have a call sequence for scan, it is useless to have a different rpc timeout which is // less than the scan timeout. If the server does not respond in time(usually this will not // happen as we have heartbeat now), we will get an OutOfOrderScannerNextException when // resending the next request and the only way to fix this is to close the scanner and open a // new one. {quote} In branch-2's blocking client (i.e. ClientScanner/ScannerCallable) we make use of RpcRetryingCallerImpl, which calculates the timeout for each call based on the smaller of the two: remaining operation timeout or configured rpc timeout. For scans, the operation timeout is dictated by hbase.client.scanner.timeout.period, which should take precedence over the configured rpc timeout per the above comment. We can fix this by using RpcRetryingCallerFactory.newCaller(int) in ClientScanner, passing the scanner timeout period in as the argument. -- This message was sent by Atlassian Jira (v8.20.7#820007)