[ https://issues.apache.org/jira/browse/HBASE-5974?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13275904#comment-13275904 ]
Anoop Sam John commented on HBASE-5974: --------------------------------------- {code} + if (-1 != cookie && cookie != rswc.cookie) { + this.scanners.remove(scannerName); + this.leases.cancelLease(scannerName); + throw new ScannerCookieOutOfOrderException("Cookie from client and cookie at server do not match"); + } {code} When the cookie is out of order, we remove the scanner and cancel Lease.[Not waiting for the lease timeout] This is in same line as what happens with NSRE. One question which arise in my mind is do we need to contact the CP hooks of pre and post scanner close here? Now in normal close() of scanner from client side and lease timeout based close, we call CP hooks. But what abt the scanner getting removed from RS when the NSRE happens. [Same applicable to ScannerCookieOutOfOrderException case too] > 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 > Priority: Critical > Attachments: HBASE-5974_0.94.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