You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Sylvain Lebresne (JIRA)" <ji...@apache.org> on 2018/11/08 10:10:00 UTC

[jira] [Commented] (CASSANDRA-14874) Read repair can race with truncations

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

Sylvain Lebresne commented on CASSANDRA-14874:
----------------------------------------------

I'll note that while I have barely spent any time thinking about it, I have a hunch that getting this perfectly right might not be easy since truncate is not timestamp based (and not coordinated with reads), but at least having coordinators check, before sending read-repairs, if they have seen a truncation since the beginning of the repair would be dead simple and improve this drastically.

> Read repair can race with truncations
> -------------------------------------
>
>                 Key: CASSANDRA-14874
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14874
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Local Write-Read Paths
>            Reporter: Sylvain Lebresne
>            Priority: Minor
>
> While hint and commit log replay handle truncation alright, we don't have anything to prevent a read/read-repair to race with {{TRUNCATE}}. In other words, you can have a read reading some pre-truncation data, some truncation running and removing that data, and then some read-repair mutation from that previous read that resurrects some data that should have bene truncated.
> Probably not that common in practice, but can lead to seemingly random data surviving truncate. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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