[ https://issues.apache.org/jira/browse/HBASE-5924?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
nkeywal updated HBASE-5924: --------------------------- Attachment: 5924.v14.patch > In the client code, don't wait for all the requests to be executed before > resubmitting a request in error. > ---------------------------------------------------------------------------------------------------------- > > Key: HBASE-5924 > URL: https://issues.apache.org/jira/browse/HBASE-5924 > Project: HBase > Issue Type: Improvement > Components: client > Affects Versions: 0.96.0 > Reporter: nkeywal > Assignee: nkeywal > Attachments: 5924.v11.patch, 5924.v14.patch, 5924.v5.patch, > 5924.v9.patch > > > The client (in the function HConnectionManager#processBatchCallback) works in > two steps: > - make the requests > - collect the failures and successes and prepare for retry > It means that when there is an immediate error (region moved, split, dead > server, ...) we still wait for all the initial requests to be executed before > submitting again the failed request. If we have a scenario with all the > requests taking 5 seconds we have a final execution time of: 5 (initial > requests) + 1 (wait time) + 5 (final request) = 11s. > We could improve this by analyzing immediately the results. This would lead > us, for the scenario mentioned above, to 6 seconds. > So we could have a performance improvement of nearly 50% in many cases, and > much more than 50% if the request execution time is different. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira