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

Dominic Letz updated CASSANDRA-8603:
------------------------------------
    Attachment: cassandra-2.1-8603_v2.txt

The equality in the system.log was in the system keyspace 
(system/local-7ad54392bcdd35a684174e047860b377)

This is because of the code in RangeTombstone.java:242

{code}
RangeTombstone t = new RangeTombstone(cell.name(), cell.name(), 
cell.timestamp(), 0);
{code}

I've provided a patch v2 that actually catches the case I intended and replaces 
the duplicated ByteBuffer by using the Composite.end() method to construct a 
BoundedComposite referencing the original.

{code}
super(start, (start != stop && stop.equals(start.end())) ? start.end() : stop, 
delTime);
{code}

> Cut tombstone memory footprint in half for cql deletes
> ------------------------------------------------------
>
>                 Key: CASSANDRA-8603
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8603
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Dominic Letz
>              Labels: tombstone
>         Attachments: cassandra-2.0.11-8603.txt, cassandra-2.1-8603.txt, 
> cassandra-2.1-8603_v2.txt, system.log
>
>
> As CQL does not yet support range deletes every delete from CQL results in a 
> "Semi-RangeTombstone" which actually has the same start and end values - but 
> until today they are copies. Effectively doubling the required heap memory to 
> store the RangeTombstone.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to