[
https://issues.apache.org/jira/browse/CASSANDRA-10990?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15165679#comment-15165679
]
Paulo Motta commented on CASSANDRA-10990:
-----------------------------------------
Thanks for the review and comments [~yukim]! Follow-up below.
bq. Isn't it simpler to just have CachedInputStream that first fills on heap
buffer and writes out to file as buffer gets full?
+1, merged {{MemoryCachedInputStream}} and {{FileCachedInputStream}} into a
single class {{RewindableInputStream}}, and also made some simplifications to
cover only our needed use case. Before I was trying to make it too general
that's why it became unnecessarily complex. Also updated tests to reflect
changes.
bq. I think we can just set to be more sane value (few hundreds kilobytes?),
the use case here is for static columns only.
Made 128KB initial capacity and 1MB max memory capacity to store read
partitions. After that, read bytes are spilled to disk. Also removed
{{ByteArrayOutputStream}} and {{ByteArrayInputStream}}, now working with a
growing {{byte[]}} buffer.
Besides that, addressed github comments, finished previous TODO list and fixed
all tests. Patch and tests available below.
||trunk||dtest||
|[branch|https://github.com/apache/cassandra/compare/trunk...pauloricardomg:10990]|[branch|https://github.com/riptano/cassandra-dtest/compare/master...pauloricardomg:10990]|
|[testall|http://cassci.datastax.com/view/Dev/view/paulomotta/job/pauloricardomg-10990-testall/lastCompletedBuild/testReport/]|
|[dtest|http://cassci.datastax.com/view/Dev/view/paulomotta/job/pauloricardomg-10990-dtest/lastCompletedBuild/testReport/]|
I will provide 3.0 patch after review, as well as update CHANGEs, etc.
[~philipthompson] if I used the same C* and dtests branches as before, do you
need to update the cassci job or can I just resubmit?
> Support streaming of older version sstables in 3.0
> --------------------------------------------------
>
> Key: CASSANDRA-10990
> URL: https://issues.apache.org/jira/browse/CASSANDRA-10990
> Project: Cassandra
> Issue Type: Bug
> Components: Streaming and Messaging
> Reporter: Jeremy Hanna
> Assignee: Paulo Motta
>
> In 2.0 we introduced support for streaming older versioned sstables
> (CASSANDRA-5772). In 3.0, because of the rewrite of the storage layer, this
> became no longer supported. So currently, while 3.0 can read sstables in the
> 2.1/2.2 format, it cannot stream the older versioned sstables. We should do
> some work to make this still possible to be consistent with what
> CASSANDRA-5772 provided.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)