Merge branch 'cassandra-2.2' into cassandra-3.0

Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ecb4ae8d
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ecb4ae8d
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ecb4ae8d

Branch: refs/heads/trunk
Commit: ecb4ae8daf536d030b1dea93c2cc13e1ca50219f
Parents: 411c560 ac9844b
Author: Josh McKenzie <[email protected]>
Authored: Sun May 8 20:32:44 2016 -0400
Committer: Josh McKenzie <[email protected]>
Committed: Sun May 8 20:32:44 2016 -0400

----------------------------------------------------------------------
 .../apache/cassandra/utils/memory/NativeAllocator.java    | 10 ++++++++++
 .../org/apache/cassandra/utils/memory/SlabAllocator.java  |  6 +++---
 2 files changed, 13 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/ecb4ae8d/src/java/org/apache/cassandra/utils/memory/NativeAllocator.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/utils/memory/NativeAllocator.java
index e5458b4,98878c0..4857f34
--- a/src/java/org/apache/cassandra/utils/memory/NativeAllocator.java
+++ b/src/java/org/apache/cassandra/utils/memory/NativeAllocator.java
@@@ -25,11 -25,28 +25,21 @@@ import java.util.concurrent.atomic.Atom
  import java.util.concurrent.atomic.AtomicReference;
  
  import org.apache.cassandra.config.CFMetaData;
 -import org.apache.cassandra.db.Cell;
 -import org.apache.cassandra.db.CounterCell;
  import org.apache.cassandra.db.DecoratedKey;
 -import org.apache.cassandra.db.DeletedCell;
 -import org.apache.cassandra.db.ExpiringCell;
 -import org.apache.cassandra.db.NativeCell;
 -import org.apache.cassandra.db.NativeCounterCell;
  import org.apache.cassandra.db.NativeDecoratedKey;
 -import org.apache.cassandra.db.NativeDeletedCell;
 -import org.apache.cassandra.db.NativeExpiringCell;
 +import org.apache.cassandra.db.rows.Row;
  import org.apache.cassandra.utils.concurrent.OpOrder;
  
+ /**
+  * This NativeAllocator uses global slab allocation strategy
+  * with slab size that scales exponentially from 8kb to 1Mb to
+  * serve allocation of up to 128kb.
+  * <p>
+  * </p>
+  * The slab allocation reduces heap fragmentation from small
+  * long-lived objects.
+  *
+  */
  public class NativeAllocator extends MemtableAllocator
  {
      private final static int MAX_REGION_SIZE = 1 * 1024 * 1024;

Reply via email to