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

Todd Lipcon commented on HBASE-5974:
------------------------------------

I don't think we should be trying to lock down internal APIs like 
RegionScanner. Coprocessors are an advanced interface and I think we should not 
endeavour to provide full compatibility between versions for them. We'll end up 
getting bogged down way too fast trying to keep this compatibility everywhere.

So, I'm still in favor of just adding a new field/method to the existing 
RegionScanner implementation.

As for the compatibility code: I think the {{useCallSeq}} flag has to be at a 
wider scope than this. Having it in ScannerCallable means that each individual 
scan will print a warning (and have to do an extra round trip), which is too 
much.
                
> Scanner retry behavior with RPC timeout on next() seems incorrect
> -----------------------------------------------------------------
>
>                 Key: HBASE-5974
>                 URL: https://issues.apache.org/jira/browse/HBASE-5974
>             Project: HBase
>          Issue Type: Bug
>          Components: client, regionserver
>    Affects Versions: 0.90.7, 0.92.1, 0.94.0, 0.96.0
>            Reporter: Todd Lipcon
>            Assignee: Anoop Sam John
>            Priority: Critical
>             Fix For: 0.96.0, 0.94.1
>
>         Attachments: 5974_94-V4.patch, 5974_trunk.patch, 
> HBASE-5974_0.94.patch, HBASE-5974_94-V2.patch, HBASE-5974_94-V3.patch
>
>
> I'm seeing the following behavior:
> - set RPC timeout to a short value
> - call next() for some batch of rows, big enough so the client times out 
> before the result is returned
> - the HConnectionManager stuff will retry the next() call to the same server. 
> At this point, one of two things can happen: 1) the previous next() call will 
> still be processing, in which case you get a LeaseException, because it was 
> removed from the map during the processing, or 2) the next() call will 
> succeed but skip the prior batch of rows.

--
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