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

Marcus Eriksson commented on CASSANDRA-11886:
---------------------------------------------

pushed to all branches below

||branch||testall||dtest||
|[marcuse/11886|https://github.com/krummas/cassandra/tree/marcuse/11886]|[testall|http://cassci.datastax.com/view/Dev/view/krummas/job/krummas-marcuse-11886-testall]|[dtest|http://cassci.datastax.com/view/Dev/view/krummas/job/krummas-marcuse-11886-dtest]|
|[marcuse/11886-2.2|https://github.com/krummas/cassandra/tree/marcuse/11886-2.2]|[testall|http://cassci.datastax.com/view/Dev/view/krummas/job/krummas-marcuse-11886-2.2-testall]|[dtest|http://cassci.datastax.com/view/Dev/view/krummas/job/krummas-marcuse-11886-2.2-dtest]|
|[marcuse/11886-3.0|https://github.com/krummas/cassandra/tree/marcuse/11886-3.0]|[testall|http://cassci.datastax.com/view/Dev/view/krummas/job/krummas-marcuse-11886-3.0-testall]|[dtest|http://cassci.datastax.com/view/Dev/view/krummas/job/krummas-marcuse-11886-3.0-dtest]|
|[marcuse/11886-3.7|https://github.com/krummas/cassandra/tree/marcuse/11886-3.7]|[testall|http://cassci.datastax.com/view/Dev/view/krummas/job/krummas-marcuse-11886-3.7-testall]|[dtest|http://cassci.datastax.com/view/Dev/view/krummas/job/krummas-marcuse-11886-3.7-dtest]|
|[marcuse/11886-trunk|https://github.com/krummas/cassandra/tree/marcuse/11886-trunk]|[testall|http://cassci.datastax.com/view/Dev/view/krummas/job/krummas-marcuse-11886-trunk-testall]|[dtest|http://cassci.datastax.com/view/Dev/view/krummas/job/krummas-marcuse-11886-trunk-dtest]|

I'll run some benchmarks to see how bad iterating over all sstables gets if we 
have several thousand sstables to see if we need to do the overlap iterator now 
or leave that as an improvement in another ticket


> Streaming will miss sections for early opened sstables during compaction
> ------------------------------------------------------------------------
>
>                 Key: CASSANDRA-11886
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11886
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Stefan Podkowinski
>            Assignee: Marcus Eriksson
>            Priority: Critical
>              Labels: correctness, repair, streaming
>         Attachments: 9700-test-2_1.patch
>
>
> Once validation compaction has been finished, all mismatching sstable 
> sections for a token range will be used for streaming as return by 
> {{StreamSession.getSSTableSectionsForRanges}}. Currently 2.1 will try to 
> restrict the sstable candidates by checking if they can be found in 
> {{CANONICAL_SSTABLES}} and will ignore them otherwise. At the same time 
> {{IntervalTree}} in the {{DataTracker}} will be build based on replaced 
> non-canonical sstables as well. In case of early opened sstables this becomes 
> a problem, as the tree will be update with {{OpenReason.EARLY}} replacements 
> that cannot be found in canonical. But whenever 
> {{getSSTableSectionsForRanges}} will get a early instance from the view, it 
> will fail to retrieve the corresponding canonical version from the map, as 
> the different generation will cause a hashcode mismatch. Please find a test 
> attached.
> As a consequence not all sections for a range are streamed. In our case this 
> has caused deleted data to reappear, as sections holding tombstones were left 
> out due to this behavior.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to