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

Paulo Motta commented on CASSANDRA-10130:
-----------------------------------------

Thanks for the update! I haven't reviewed new patch yet, but just commenting on 
the latest statement to get you unblocked:

bq. Currently, these SSTableAddedNotification s are not associated to an 
reindexing because the added SSTables contain data that has been already 
indexed. What do you think?

good point! since loading external sstables (either via streaming or 
{{CFS.loadNewSSTables}}) requires rebuilding indexes while flushing does not 
this probably indicate we want to further specialize 
{{SSTableAddedNotification}} to indicate whether the new sstables added were 
flushed or loaded from an external source. By the way, sstables replaced by 
compaction use the {{SSTableListChangedNotification}} so this would not be a 
problem there.

We could either add a new field to {{SSTableAddedNotification}} to indicate 
wether the added sstables come from flush or external sstables or create two 
new notifications which would inherit from  {{SSTableAddedNotification}} to 
maintain backward compatibility, perhaps: {{SSTableFlushedNotification}} and 
{{ExternalSSTableLoadedNotification}}. 

I think it would be cleaner to have a notification-based 2i rebuild, since this 
would remove a dependency from components that need to load external sstables 
from the secondary index manager and this is probably a good opportunity to do 
it.

> Node failure during 2i update after streaming can have incomplete 2i when 
> restarted
> -----------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-10130
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10130
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Coordination
>            Reporter: Yuki Morishita
>            Assignee: Andrés de la Peña
>            Priority: Minor
>
> Since MV/2i update happens after SSTables are received, node failure during 
> MV/2i update can leave received SSTables live when restarted while MV/2i are 
> partially up to date.
> We can add some kind of tracking mechanism to automatically rebuild at the 
> startup, or at least warn user when the node restarts.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to