You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Paulo Motta (JIRA)" <ji...@apache.org> on 2017/04/03 20:24:41 UTC

[jira] [Commented] (CASSANDRA-13405) ViewBuilder can miss data due to sstable generation filter

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

Paulo Motta commented on CASSANDRA-13405:
-----------------------------------------

bq. The view builder for one MV is restarted when other MVs are added on the same keyspace.

Just curious, is there any reason for this? I don't see a reason for interrupting current view builds when a new view is added so perhaps we should improve this? Either here or in another ticket..

bq. I don't see a need for this generation tracking across restarts, it only needs to be tracked during a builders life (to avoid adding in newly compacted data). 

good catch, I think the original idea was to support resume after crash but this is not safe since compacted sstables can be garbage collected in-between view build restart - we could try to handle this by keeping the references between rebuild, but resuming by token range is probably good enough already and much simpler.

The patch looks good and new logs will be very helpful, commented a few minor nits directly on github code. +1 after nits are addressed and 3.11 dtest results look good. Thanks!

> ViewBuilder can miss data due to sstable generation filter
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-13405
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13405
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Local Write-Read Paths
>            Reporter: T Jake Luciani
>            Assignee: T Jake Luciani
>              Labels: materializedviews
>             Fix For: 3.0.13
>
>
> The view builder for one MV is restarted when other MVs are added on the same keyspace.  There is an issue if compactions are running between these restarts that can cause the view builder to skip data, since the builder tracks the max sstable generation to filter by when it starts back up.
> I don't see a need for this generation tracking across restarts, it only needs to be tracked during a builders life (to avoid adding in newly compacted data).  



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)