[ 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-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org