Sam Tunnicliffe created CASSANDRA-10343:
-------------------------------------------
Summary: Erroneous partition deletion events are delivered to
indexers
Key: CASSANDRA-10343
URL: https://issues.apache.org/jira/browse/CASSANDRA-10343
Project: Cassandra
Issue Type: Bug
Reporter: Sam Tunnicliffe
Assignee: Sam Tunnicliffe
Fix For: 3.0.0 rc1
In {{AtomicBTreePartition#addAllWithSizeDelta}} we check
{{update.deletionInfo().isLive()}} to determine whether the
{{PartitionDeletion}} should be passed to the supplied {{IndexTransaction}}.
This is incorrect and it results in the {{PartitionDeletion}} being passed on
if *either* a partition delete or any range tombstones are present in the
update.
We need to change:
{code}
if (!update.deletionInfo().isLive())
{code}
to
{code}
if (!update.deletionInfo().getPartitionDeletion().isLive())
{code}
Note that the built-in indexes don't currently do anything with the
{{deletionTime}} and so aren't affected, but any custom implementation which
didn't examine it properly might remove data from its index where it shouldn't
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)