[jira] [Updated] (CASSANDRA-15462) Purgable tombstones can cause false positives in repaired data tracking

2020-01-23 Thread Sam Tunnicliffe (Jira)


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

Sam Tunnicliffe updated CASSANDRA-15462:

  Fix Version/s: (was: 4.0-beta)
 4.0-alpha
  Since Version: 4.0-alpha
Source Control Link: 
https://github.com/apache/cassandra/commit/9a280516ca8b9e730ae0648e5e29ee6280605132
 Resolution: Fixed
 Status: Resolved  (was: Ready to Commit)

Thanks, committed with nits addressed.

> Purgable tombstones can cause false positives in repaired data tracking
> ---
>
> Key: CASSANDRA-15462
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15462
> Project: Cassandra
>  Issue Type: Bug
>  Components: Observability/Metrics
>Reporter: Sam Tunnicliffe
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 4.0-alpha
>
>
> Calculating the repaired data digest on the read path (for the purposes of 
> detecting mismatches in the repaired data across replicas) is done before 
> purging any tombstones due to gcgs or last repaired time. This causes false 
> positives when repaired sstables include GC-able tombstones on some replicas 
> but not others. 
> Validation compactions do purge tombstones so it's perfectly possible for 
> sstables to mismatch in this way without causing any streaming during repair.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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



[jira] [Updated] (CASSANDRA-15462) Purgable tombstones can cause false positives in repaired data tracking

2020-01-21 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-15462:

Status: Ready to Commit  (was: Review In Progress)

+1, nits;

* the comment in the {{RepairedDataPurger}} constructor should be removed 
({{isForThrift}} is gone in 4.0)
* {{WithTracking}} - keep the {{protected DecoratedKey 
applyToPartitionKey(DecoratedKey key)}} method and call 
{{repairedDataInfo.onNewPartition(iterator);}} there?

> Purgable tombstones can cause false positives in repaired data tracking
> ---
>
> Key: CASSANDRA-15462
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15462
> Project: Cassandra
>  Issue Type: Bug
>  Components: Observability/Metrics
>Reporter: Sam Tunnicliffe
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 4.0-beta
>
>
> Calculating the repaired data digest on the read path (for the purposes of 
> detecting mismatches in the repaired data across replicas) is done before 
> purging any tombstones due to gcgs or last repaired time. This causes false 
> positives when repaired sstables include GC-able tombstones on some replicas 
> but not others. 
> Validation compactions do purge tombstones so it's perfectly possible for 
> sstables to mismatch in this way without causing any streaming during repair.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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



[jira] [Updated] (CASSANDRA-15462) Purgable tombstones can cause false positives in repaired data tracking

2020-01-21 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-15462:

Reviewers: Marcus Eriksson, Marcus Eriksson  (was: Marcus Eriksson)
   Marcus Eriksson, Marcus Eriksson  (was: Marcus Eriksson)
   Status: Review In Progress  (was: Patch Available)

> Purgable tombstones can cause false positives in repaired data tracking
> ---
>
> Key: CASSANDRA-15462
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15462
> Project: Cassandra
>  Issue Type: Bug
>  Components: Observability/Metrics
>Reporter: Sam Tunnicliffe
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 4.0-beta
>
>
> Calculating the repaired data digest on the read path (for the purposes of 
> detecting mismatches in the repaired data across replicas) is done before 
> purging any tombstones due to gcgs or last repaired time. This causes false 
> positives when repaired sstables include GC-able tombstones on some replicas 
> but not others. 
> Validation compactions do purge tombstones so it's perfectly possible for 
> sstables to mismatch in this way without causing any streaming during repair.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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



[jira] [Updated] (CASSANDRA-15462) Purgable tombstones can cause false positives in repaired data tracking

2020-01-14 Thread Marcus Eriksson (Jira)


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

Marcus Eriksson updated CASSANDRA-15462:

Reviewers: Marcus Eriksson

> Purgable tombstones can cause false positives in repaired data tracking
> ---
>
> Key: CASSANDRA-15462
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15462
> Project: Cassandra
>  Issue Type: Bug
>  Components: Observability/Metrics
>Reporter: Sam Tunnicliffe
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 4.0-beta
>
>
> Calculating the repaired data digest on the read path (for the purposes of 
> detecting mismatches in the repaired data across replicas) is done before 
> purging any tombstones due to gcgs or last repaired time. This causes false 
> positives when repaired sstables include GC-able tombstones on some replicas 
> but not others. 
> Validation compactions do purge tombstones so it's perfectly possible for 
> sstables to mismatch in this way without causing any streaming during repair.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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



[jira] [Updated] (CASSANDRA-15462) Purgable tombstones can cause false positives in repaired data tracking

2019-12-19 Thread Sam Tunnicliffe (Jira)


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

Sam Tunnicliffe updated CASSANDRA-15462:

 Bug Category: Parent values: Correctness(12982)
   Complexity: Normal
Discovered By: Code Inspection
Fix Version/s: 4.0-beta
 Severity: Normal
   Status: Open  (was: Triage Needed)

The linked branch is based on the fix for CASSANDRA-15461. We can't actually 
purge the eligible tombstones when generating the repaired data digest, as this 
happens before the repaired and unrepaired data is merged. Instead, we supply a 
{{PurgeFunction}} to the digest generating function, which uses it to test 
which tombstones are going to be purged from the final result, excluding them 
from the digest if necessary. The main complication is that we don't know 
whether a partition will be completely purged until after it has been 
processed. o work around this, we create an overall digest for the entire 
resultset and a temporary digest of the current partition, only adding the 
temporary digest to the overall if the partition is not fully purged.

||branch||CI||

|[15462-4.0|https://github.com/beobal/cassandra/tree/15462-4.0]|[circle|https://circleci.com/gh/beobal/workflows/cassandra/tree/15462-4.0]|

> Purgable tombstones can cause false positives in repaired data tracking
> ---
>
> Key: CASSANDRA-15462
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15462
> Project: Cassandra
>  Issue Type: Bug
>  Components: Observability/Metrics
>Reporter: Sam Tunnicliffe
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 4.0-beta
>
>
> Calculating the repaired data digest on the read path (for the purposes of 
> detecting mismatches in the repaired data across replicas) is done before 
> purging any tombstones due to gcgs or last repaired time. This causes false 
> positives when repaired sstables include GC-able tombstones on some replicas 
> but not others. 
> Validation compactions do purge tombstones so it's perfectly possible for 
> sstables to mismatch in this way without causing any streaming during repair.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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



[jira] [Updated] (CASSANDRA-15462) Purgable tombstones can cause false positives in repaired data tracking

2019-12-19 Thread Sam Tunnicliffe (Jira)


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

Sam Tunnicliffe updated CASSANDRA-15462:

Test and Documentation Plan: Updated unit and in-jvm dtests
 Status: Patch Available  (was: Open)

> Purgable tombstones can cause false positives in repaired data tracking
> ---
>
> Key: CASSANDRA-15462
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15462
> Project: Cassandra
>  Issue Type: Bug
>  Components: Observability/Metrics
>Reporter: Sam Tunnicliffe
>Assignee: Sam Tunnicliffe
>Priority: Normal
> Fix For: 4.0-beta
>
>
> Calculating the repaired data digest on the read path (for the purposes of 
> detecting mismatches in the repaired data across replicas) is done before 
> purging any tombstones due to gcgs or last repaired time. This causes false 
> positives when repaired sstables include GC-able tombstones on some replicas 
> but not others. 
> Validation compactions do purge tombstones so it's perfectly possible for 
> sstables to mismatch in this way without causing any streaming during repair.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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