[ 
https://issues.apache.org/jira/browse/CASSANDRA-847?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12842152#action_12842152
 ] 

Jonathan Ellis commented on CASSANDRA-847:
------------------------------------------

> I've always considered the Iterator interface to be super-weak for IO. There 
> is no support for exception handling, and hasNext() is dangerous (when you 
> begin chaining iterators that are returning lazy objects like IteratingRow) 
> because it usually involves seeks. 

Typed exceptions are a misfeature anyway, so that's a non-issue.

hasNext won't seek any more than a clunkier manual interface.  either way you 
need to (a) design your format so you don't have to do random i/o and (b) 
buffer to avoid seeks when switching between different objects, and that is 
what we do.

the old iterator-based compaction for instance never does more seeks than 
another interface would given the same buffer sizes.

> Make the reading half of compactions memory-efficient
> -----------------------------------------------------
>
>                 Key: CASSANDRA-847
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-847
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Stu Hood
>            Priority: Critical
>             Fix For: 0.7
>
>         Attachments: 
> 0001-Add-structures-that-were-important-to-the-SSTableSca.patch, 
> 0002-Implement-most-of-the-new-SSTableScanner-interface.patch, 
> 0003-Rename-RowIndexedReader-specific-test.patch, 
> 0004-Improve-Scanner-tests-and-separate-SuperCF-handling-.patch, 
> 0005-Add-Scanner-interface-and-a-Filtered-implementation-.patch, 
> 0006-Add-support-for-compaction-of-super-CFs-and-some-tes.patch
>
>
> This issue is the next on the road to finally fixing CASSANDRA-16. To make 
> compactions memory efficient, we have to be able to perform the compaction 
> process on the smallest possible chunks that might intersect and contend 
> one-another, meaning that we need a better abstraction for reading from 
> SSTables.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to