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 2015/12/01 20:32:10 UTC

[jira] [Issue Comment Deleted] (CASSANDRA-10674) Materialized View SSTable streaming/leaving status race on decommission

     [ https://issues.apache.org/jira/browse/CASSANDRA-10674?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paulo Motta updated CASSANDRA-10674:
------------------------------------
    Comment: was deleted

(was: bq. I think if either 1) there are pending nodes or 2) there are no view natural endpoints, the current MV design will not want the batchlog cleaned up on a successful write.

I think when there is a defined natural endpoint (if it's the current node or not)

I think, in the pending nodes case it's valid to clear the batchlog if the write is sucessful, because it means the data was replicated correctly to the pending endpoint that will own the range of the natural endpoint after the range movement is completed. But in the case when there is no natural endpoints, it simply means this node still hasn't updated its)

> Materialized View SSTable streaming/leaving status race on decommission
> -----------------------------------------------------------------------
>
>                 Key: CASSANDRA-10674
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10674
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Coordination, Distributed Metadata
>            Reporter: Joel Knighton
>            Assignee: Paulo Motta
>             Fix For: 3.0.1, 3.1
>
>         Attachments: leaving-node-debug.log, receiving-node-debug.log
>
>
> On decommission of a node in a cluster with materialized views, it is possible for the decommissioning node to begin streaming sstables for an MV base table before the receiving node is aware of the leaving status.
> The materialized view base/view replica pairing checks pending endpoints to handle the case when an sstable is received from a leaving node; without the leaving message, this check breaks and an exception is thrown. The streamed sstable is never applied.
> Logs from a decommissioning node and a node receiving such a stream are attached.



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