[
https://issues.apache.org/jira/browse/CASSANDRA-2116?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13415659#comment-13415659
]
Jonathan Ellis commented on CASSANDRA-2116:
-------------------------------------------
Iterators are screwing us. Ideally I'd like to have things like BSF.getSegment
just throw IOException back up until someone who knows what sstable it belongs
to, can deal with it, but since Iterator.next can't throw anything [checked]
that's not an option.
So I think what we need to do is go back to FSReadError / FSWriteError, with
just a path to the file in question, and let the exception handler deal with
parsing out directory + ks + cf from that.
This has the added benefit of being able to handle non-sstable i/o (cache
saving, commitlogs) without needing extra exception types.
> Separate out filesystem errors from generic IOErrors
> ----------------------------------------------------
>
> Key: CASSANDRA-2116
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2116
> Project: Cassandra
> Issue Type: Improvement
> Components: Core
> Reporter: Chris Goffinet
> Assignee: Aleksey Yeschenko
> Fix For: 1.2
>
> Attachments:
> 0001-Issue-2116-Replace-some-IOErrors-with-more-informati.patch,
> 0001-Separate-out-filesystem-errors-from-generic-IOErrors.patch
>
>
> We throw IOErrors everywhere today in the codebase. We should separate out
> specific errors such as (reading, writing) from filesystem into FSReadError
> and FSWriteError. This makes it possible in the next ticket to allow certain
> failure modes (kill the server if reads or writes fail to disk).
--
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