Marcus Eriksson created CASSANDRA-15924:
-------------------------------------------

             Summary: Avoid emitting empty range tombstones from 
RangeTombstoneList
                 Key: CASSANDRA-15924
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-15924
             Project: Cassandra
          Issue Type: Bug
            Reporter: Marcus Eriksson
            Assignee: Marcus Eriksson


In {{RangeTombstoneList#iterator}} there is a chance we emit empty range 
tombstones depending on the slice passed in. This can happen during read repair 
with either an empty slice or with paging and the final page being empty.

This creates problems in RTL if we try to insert a new range tombstone which 
covers the empty ones;
{code}
Caused by: java.lang.AssertionError
        at 
org.apache.cassandra.db.RangeTombstoneList.insertFrom(RangeTombstoneList.java:541)
        at 
org.apache.cassandra.db.RangeTombstoneList.addAll(RangeTombstoneList.java:217)
        at 
org.apache.cassandra.db.MutableDeletionInfo.add(MutableDeletionInfo.java:141)
        at 
org.apache.cassandra.db.partitions.AtomicBTreePartition.addAllWithSizeDelta(AtomicBTreePartition.java:137)
        at org.apache.cassandra.db.Memtable.put(Memtable.java:254)
        at 
org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1210)
        at org.apache.cassandra.db.Keyspace.applyInternal(Keyspace.java:573)
        at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:421)
        at org.apache.cassandra.db.Mutation.apply(Mutation.java:210)
        at org.apache.cassandra.db.Mutation.apply(Mutation.java:215)
        at org.apache.cassandra.db.Mutation.apply(Mutation.java:224)
        at 
org.apache.cassandra.cql3.statements.ModificationStatement.executeInternalWithoutCondition(ModificationStatement.java:582)
        at 
org.apache.cassandra.cql3.statements.ModificationStatement.executeInternal(ModificationStatement.java:572)
{code}



--
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

Reply via email to