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

Andrés de la Peña edited comment on CASSANDRA-10130 at 6/2/17 8:50 AM:
-----------------------------------------------------------------------

[~pauloricardomg], definitively the event driven approach is a better idea than 
the lambda. Here is the updated patch:

||[trunk|https://github.com/apache/cassandra/compare/trunk...adelapena:33a603bf89f95a2cfea737572840897fb26c6585]|[utests|http://cassci.datastax.com/view/Dev/view/adelapena/job/adelapena-10130-trunk-testall/]|[dtests|http://cassci.datastax.com/view/Dev/view/adelapena/job/adelapena-10130-trunk-dtest/]|

There is a new 
[{{SSTableLoadedNotification}}|https://github.com/adelapena/cassandra/blob/33a603bf89f95a2cfea737572840897fb26c6585/src/java/org/apache/cassandra/notifications/SSTableLoadedNotification.java].
 This notification contains the unused list of added SSTables; maybe be could 
remove them.

There is a new attribute named {{areLoaded}} to 
[{{SSTableAddedNotification}}|https://github.com/adelapena/cassandra/blob/33a603bf89f95a2cfea737572840897fb26c6585/src/java/org/apache/cassandra/notifications/SSTableAddedNotification.java#L27].
 This attribute indicates if the added SSTables come from an external source 
such as streaming or sstableoader.

The new {{SSTableLoadedNotification}} is sent by 
[{{Tracker#addSSTables}}|https://github.com/adelapena/cassandra/blob/33a603bf89f95a2cfea737572840897fb26c6585/src/java/org/apache/cassandra/db/lifecycle/Tracker.java#L204]
 depending on its new {{areLoaded}} parameter, with the same meaning as in 
{{SSTableAddedNotification}}.

[{{SecondaryIndexManager#buildAllIndexesBlocking}}|https://github.com/adelapena/cassandra/blob/33a603bf89f95a2cfea737572840897fb26c6585/src/java/org/apache/cassandra/index/SecondaryIndexManager.java#L289]
 is now private and called by 
[{{SecondaryIndexManager#handleNotification}}|https://github.com/adelapena/cassandra/blob/33a603bf89f95a2cfea737572840897fb26c6585/src/java/org/apache/cassandra/index/SecondaryIndexManager.java#L1231].


was (Author: adelapena):
[~pauloricardomg], definitively the event driven approach is a better idea than 
the lambda. Here is the updated patch:

||[trunk|https://github.com/apache/cassandra/compare/trunk...adelapena:10130-trunk]|[utests|http://cassci.datastax.com/view/Dev/view/adelapena/job/adelapena-10130-trunk-testall/]|[dtests|http://cassci.datastax.com/view/Dev/view/adelapena/job/adelapena-10130-trunk-dtest/]|

There is a new 
[{{SSTableLoadedNotification}}|https://github.com/adelapena/cassandra/blob/33a603bf89f95a2cfea737572840897fb26c6585/src/java/org/apache/cassandra/notifications/SSTableLoadedNotification.java].
 This notification contains the unused list of added SSTables; maybe be could 
remove them.

There is a new attribute named {{areLoaded}} to 
[{{SSTableAddedNotification}}|https://github.com/adelapena/cassandra/blob/33a603bf89f95a2cfea737572840897fb26c6585/src/java/org/apache/cassandra/notifications/SSTableAddedNotification.java#L27].
 This attribute indicates if the added SSTables come from an external source 
such as streaming or sstableoader.

The new {{SSTableLoadedNotification}} is sent by 
[{{Tracker#addSSTables}}|https://github.com/adelapena/cassandra/blob/33a603bf89f95a2cfea737572840897fb26c6585/src/java/org/apache/cassandra/db/lifecycle/Tracker.java#L204]
 depending on its new {{areLoaded}} parameter, with the same meaning as in 
{{SSTableAddedNotification}}.

[{{SecondaryIndexManager#buildAllIndexesBlocking}}|https://github.com/adelapena/cassandra/blob/33a603bf89f95a2cfea737572840897fb26c6585/src/java/org/apache/cassandra/index/SecondaryIndexManager.java#L289]
 is now private and called by 
[{{SecondaryIndexManager#handleNotification}}|https://github.com/adelapena/cassandra/blob/33a603bf89f95a2cfea737572840897fb26c6585/src/java/org/apache/cassandra/index/SecondaryIndexManager.java#L1231].

> 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