[ https://issues.apache.org/jira/browse/HBASE-5974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13486684#comment-13486684 ]
Anoop Sam John commented on HBASE-5974: --------------------------------------- Chunhui Your above mentioned steps for that the above test case change is correct? I think for that teh change to be {code} public Result[] next(long scannerId, int nbRows, long callSeq) throws IOException { if ( this.tableScannerId == scannerId ) { try { Thread.sleep(rpcTimeout + 500); } catch (InterruptedException e) { } } return super.next(scannerId, nbRows, callSeq); } {code} > 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 > > Attachments: 5974_94-V4.patch, 5974_trunk.patch, 5974_trunk-V2.patch, > 5974_trunk-V3.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 For more information on JIRA, see: http://www.atlassian.com/software/jira