You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by al...@apache.org on 2015/05/20 19:00:14 UTC
cassandra git commit: Optimize range tombstone memory footprint
Repository: cassandra
Updated Branches:
refs/heads/cassandra-2.1 7af9c6ac8 -> 2248780ea
Optimize range tombstone memory footprint
patch by Benjamin Lerer; reviewed by Aleksey Yeschenko for
CASSANDRA-8603
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/2248780e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2248780e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2248780e
Branch: refs/heads/cassandra-2.1
Commit: 2248780eae46d98be8a9414d3e833fb6c16c7137
Parents: 7af9c6a
Author: blerer <be...@datastax.com>
Authored: Tue May 19 16:12:53 2015 +0200
Committer: Aleksey Yeschenko <al...@apache.org>
Committed: Wed May 20 19:57:35 2015 +0300
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/db/RangeTombstone.java | 4 ++++
2 files changed, 5 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2248780e/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 6fc1c9c..92d4d54 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.1.6
+ * Optimize range tombstone memory footprint (CASSANDRA-8603)
* Use configured gcgs in anticompaction (CASSANDRA-9397)
* Warn on misuse of unlogged batches (CASSANDRA-9282)
* Failure detector detects and ignores local pauses (CASSANDRA-9183)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2248780e/src/java/org/apache/cassandra/db/RangeTombstone.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/RangeTombstone.java b/src/java/org/apache/cassandra/db/RangeTombstone.java
index 3f3d675..feeadbb 100644
--- a/src/java/org/apache/cassandra/db/RangeTombstone.java
+++ b/src/java/org/apache/cassandra/db/RangeTombstone.java
@@ -273,6 +273,10 @@ public class RangeTombstone extends Interval<Composite, DeletionTime> implements
{
Composite max = type.serializer().deserialize(in);
DeletionTime dt = DeletionTime.serializer.deserialize(in);
+ // If the max equals the min.end(), we can avoid keeping an extra ByteBuffer in memory by using
+ // min.end() instead of max
+ Composite minEnd = min.end();
+ max = minEnd.equals(max) ? minEnd : max;
return new RangeTombstone(min, max, dt);
}