[ https://issues.apache.org/jira/browse/HBASE-3029?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ryan rawson updated HBASE-3029: ------------------------------- Fix Version/s: 0.92.0 (was: 0.90.0) Priority: Minor (was: Major) > if scanner.next() throws IOE we dont do anything > ------------------------------------------------ > > Key: HBASE-3029 > URL: https://issues.apache.org/jira/browse/HBASE-3029 > Project: HBase > Issue Type: Bug > Affects Versions: 0.89.20100621 > Reporter: ryan rawson > Priority: Minor > Fix For: 0.92.0 > > > During a scan if the HFile layer throws a unrecoverable IOE, for example, > checksum exception, right now we throw the exception, and abort that RPC. > But the scanner is not marked as closed, and the HFileScanner is left in a > weird state. Subsequent calls get weird exceptions about ByteBuffers but > this is an artifact of being left pointing at the end of the previous block > when we should be into the next block. > If the DFSClient throws an exception we have a choice: > - make some efforts to retry > - assume DFSClient has already tried, and thus this is a fatal type error > The former case might be hard to implement, and the latter case needs to be > handled so that subsequent calls to the scanner throw meaningful exceptions. > Right now there is no way to early terminate a scanner from the > server-side... HRegion$RegionScanner doesn't have a 'closed' flag nor does it > have the ability to realize the scanner is now closed. The client side takes > care of not iterating past the end of a scanner so in the normal case we dont > iterate anymore once a scanner returns 'false'. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.