You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Sean Sechrist (JIRA)" <ji...@apache.org> on 2011/03/25 20:04:07 UTC
[jira] [Updated] (HBASE-3686) ClientScanner skips too many rows on
recovery if using scanner caching
[ https://issues.apache.org/jira/browse/HBASE-3686?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sean Sechrist updated HBASE-3686:
---------------------------------
Affects Version/s: 0.90.1
Summary: ClientScanner skips too many rows on recovery if using scanner caching (was: Scanner timeout on RegionServer but Client won't know what happened)
Updated title to be more accurate.
> ClientScanner skips too many rows on recovery if using scanner caching
> ----------------------------------------------------------------------
>
> Key: HBASE-3686
> URL: https://issues.apache.org/jira/browse/HBASE-3686
> Project: HBase
> Issue Type: Bug
> Components: client
> Affects Versions: 0.89.20100924, 0.90.1
> Reporter: Sean Sechrist
> Priority: Minor
>
> This can cause rows to be lost from a scan.
> See this thread where the issue was brought up: http://search-hadoop.com/m/xITBQ136xGJ1
> If hbase.regionserver.lease.period is higher on the client than the server we can get this series of events:
> 1. Client is scanning along happily, and does something slow.
> 2. Scanner times out on region server
> 3. Client calls HTable.ClientScanner.next()
> 4. The region server throws an UnknownScannerException
> 5. Client catches exception and sees that it's not longer then it's hbase.regionserver.lease.period config, so it doesn't throw a ScannerTimeoutException. Instead, it treats it like a NSRE.
> Right now the workaround is to make sure the configs are consistent.
> A possible fix would be to use whatever the region server's scanner timeout is, rather than the local one.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira