[ 
https://issues.apache.org/jira/browse/HBASE-5924?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13290483#comment-13290483
 ] 

Zhihong Ted Yu commented on HBASE-5924:
---------------------------------------

{code}
+          // We need the origin multi action to find out what are the actions 
to replay if
{code}
'origin' -> 'original', 'what are the actions to replay' -> 'what actions to 
replay'
{code}
+    } catch (InterruptedException e) {
+      throw new IOException(e);
{code}
InterruptedIOException should be thrown.
{code}
+      // mutate list so that it is empty for complete success, or contains
+      // only failed records results are returned in the same order as the
+      // requests in list walk the list backwards, so we can remove from list
{code}
The above is hard to read. A period between 'records' and 'results' ? A period 
between 'list' and 'walk' ?

Hadoop QA didn't run tests:
https://builds.apache.org/job/PreCommit-HBASE-Build/2116/console
                
> 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.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

        

Reply via email to