You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Bryan Beaudreault (Jira)" <ji...@apache.org> on 2024/02/07 13:40:00 UTC

[jira] [Created] (HBASE-28348) Multi should return what results it can before rpc timeout

Bryan Beaudreault created HBASE-28348:
-----------------------------------------

             Summary: Multi should return what results it can before rpc timeout
                 Key: HBASE-28348
                 URL: https://issues.apache.org/jira/browse/HBASE-28348
             Project: HBase
          Issue Type: Improvement
            Reporter: Bryan Beaudreault


Scans have a nice feature where they try to return a heartbeat with whatever results they have accumulated before the rpc timeout expires. It targets returning in 1/2 the rpc timeout or max scanner time. The reason for scans is to avoid painful scanner timeouts which cause the scan to have to be restarted due to out of sync sequence id.

Multis have a similar problem. A big batch can come in which can't be served in the configured timeout. In this case the client side will abandon the request when the timeout is exceeded, and resubmit if there are retries/operation timeout left. This wastes work since it's likely that some of the results had been fetched by the time a timeout occurred.

Multis already can retry immediately when the batch exceeds the max result size limit. We can use the same functionality to also return when we've taken more than half the rpc timeout.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)