You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by jb...@apache.org on 2013/09/25 03:51:32 UTC
[1/9] git commit: Start MeteredFlusher earlier to prevent OOM during
CL replay patch by Oleg Anastasyev; reviewed by jbellis for CASSANDRA-7078
Updated Branches:
refs/heads/cassandra-1.2 546485310 -> 16f19a7cc
refs/heads/cassandra-2.0 07638f41a -> a06a13838
refs/heads/trunk 2fea9fab0 -> 3a9120bbd
Start MeteredFlusher earlier to prevent OOM during CL replay
patch by Oleg Anastasyev; reviewed by jbellis for CASSANDRA-7078
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/54648531
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/54648531
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/54648531
Branch: refs/heads/cassandra-2.0
Commit: 546485310e20dd2c6c67f863cba4b5acd1bae586
Parents: fa8d923
Author: Jonathan Ellis <jb...@apache.org>
Authored: Tue Sep 24 10:44:20 2013 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Tue Sep 24 10:47:08 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/CassandraDaemon.java | 7 ++++---
2 files changed, 5 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/54648531/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index ae2ab5e..a5903fa 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
1.2.11
+ * Start MeteredFlusher earlier to prevent OOM during CL replay (CASSANDRA-6087)
* Avoid sending Truncate command to fat clients (CASSANDRA-6088)
* Allow cache-keys-to-save to be set at runtime (CASSANDRA-5980)
* Allow where clause conditions to be in parenthesis (CASSANDRA-6037)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/54648531/src/java/org/apache/cassandra/service/CassandraDaemon.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/CassandraDaemon.java b/src/java/org/apache/cassandra/service/CassandraDaemon.java
index b2fc367..448bb0a 100644
--- a/src/java/org/apache/cassandra/service/CassandraDaemon.java
+++ b/src/java/org/apache/cassandra/service/CassandraDaemon.java
@@ -297,6 +297,10 @@ public class CassandraDaemon
logger.warn("Unable to start GCInspector (currently only supported on the Sun JVM)");
}
+ // MeteredFlusher can block if flush queue fills up, so don't put on scheduledTasks
+ // Start it before commit log, so memtables can flush during commit log replay
+ StorageService.optionalTasks.scheduleWithFixedDelay(new MeteredFlusher(), 1000, 1000, TimeUnit.MILLISECONDS);
+
// replay the log if necessary
try
{
@@ -335,9 +339,6 @@ public class CassandraDaemon
};
StorageService.optionalTasks.schedule(runnable, 5 * 60, TimeUnit.SECONDS);
- // MeteredFlusher can block if flush queue fills up, so don't put on scheduledTasks
- StorageService.optionalTasks.scheduleWithFixedDelay(new MeteredFlusher(), 1000, 1000, TimeUnit.MILLISECONDS);
-
SystemTable.finishStartup();
// start server internals
[9/9] git commit: merge from 2.0
Posted by jb...@apache.org.
merge from 2.0
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3a9120bb
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3a9120bb
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3a9120bb
Branch: refs/heads/trunk
Commit: 3a9120bbd9318b9cc8c647920bfb0d348fcf104c
Parents: 2fea9fa a06a138
Author: Jonathan Ellis <jb...@apache.org>
Authored: Tue Sep 24 20:51:26 2013 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Tue Sep 24 20:51:26 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/db/Memtable.java | 4 +---
src/java/org/apache/cassandra/utils/Allocator.java | 2 --
src/java/org/apache/cassandra/utils/HeapAllocator.java | 5 -----
src/java/org/apache/cassandra/utils/SlabAllocator.java | 8 --------
5 files changed, 2 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/3a9120bb/CHANGES.txt
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/3a9120bb/src/java/org/apache/cassandra/db/Memtable.java
----------------------------------------------------------------------
[3/9] git commit: merge from 1.2
Posted by jb...@apache.org.
merge from 1.2
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/07638f41
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/07638f41
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/07638f41
Branch: refs/heads/trunk
Commit: 07638f41a8c62932b05bdb498aaaedabd2efd139
Parents: 7af56b5 424206a
Author: Jonathan Ellis <jb...@apache.org>
Authored: Tue Sep 24 10:47:40 2013 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Tue Sep 24 10:47:40 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 2 +
examples/client_only/src/ClientOnlyExample.java | 109 ++++---------------
src/java/org/apache/cassandra/auth/Auth.java | 5 +-
.../cassandra/auth/CassandraAuthorizer.java | 2 +-
.../cassandra/auth/PasswordAuthenticator.java | 2 +-
.../apache/cassandra/cql3/QueryProcessor.java | 5 +-
.../org/apache/cassandra/cql3/ResultSet.java | 11 +-
.../cql3/statements/ListUsersStatement.java | 2 +-
.../cql3/statements/SelectStatement.java | 4 +-
.../apache/cassandra/service/ClientState.java | 64 +++++++----
.../apache/cassandra/service/QueryState.java | 8 ++
.../cassandra/thrift/ThriftClientState.java | 11 +-
.../cassandra/thrift/ThriftSessionManager.java | 6 +-
.../org/apache/cassandra/tools/NodeCmd.java | 7 ++
.../cassandra/transport/ServerConnection.java | 6 +-
15 files changed, 114 insertions(+), 130 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/07638f41/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 4d52c99,281665e..830f568
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -2,8 -2,9 +2,10 @@@
* Improve memory usage of metadata min/max column names (CASSANDRA-6077)
* Fix thrift validation refusing row markers on CQL3 tables (CASSANDRA-6081)
* Fix insertion of collections with CAS (CASSANDRA-6069)
+ * Correctly send metadata on SELECT COUNT (CASSANDRA-6080)
+ * Track clients' remote addresses in ClientState (CASSANDRA-6070)
Merged from 1.2:
+ * Start MeteredFlusher earlier to prevent OOM during CL replay (CASSANDRA-6087)
* Avoid sending Truncate command to fat clients (CASSANDRA-6088)
* Allow cache-keys-to-save to be set at runtime (CASSANDRA-5980)
* Allow where clause conditions to be in parenthesis (CASSANDRA-6037)
[5/9] git commit: Allow estimated memtable size to exceed slab
allocator size patch by jbellis; reviewed by jasobrown for CASSANDRA-6078
Posted by jb...@apache.org.
Allow estimated memtable size to exceed slab allocator size
patch by jbellis; reviewed by jasobrown for CASSANDRA-6078
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/16f19a7c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/16f19a7c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/16f19a7c
Branch: refs/heads/trunk
Commit: 16f19a7cce409da4e8ab9522c29450b17879e8d9
Parents: 5464853
Author: Jonathan Ellis <jb...@apache.org>
Authored: Tue Sep 24 20:46:45 2013 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Tue Sep 24 20:46:45 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/db/Memtable.java | 4 +---
src/java/org/apache/cassandra/utils/Allocator.java | 2 --
src/java/org/apache/cassandra/utils/HeapAllocator.java | 5 -----
src/java/org/apache/cassandra/utils/SlabAllocator.java | 8 --------
5 files changed, 2 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index a5903fa..6341e29 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
1.2.11
+ * Allow estimated memtable size to exceed slab allocator size (CASSANDRA-6078)
* Start MeteredFlusher earlier to prevent OOM during CL replay (CASSANDRA-6087)
* Avoid sending Truncate command to fat clients (CASSANDRA-6088)
* Allow cache-keys-to-save to be set at runtime (CASSANDRA-5980)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/src/java/org/apache/cassandra/db/Memtable.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/Memtable.java b/src/java/org/apache/cassandra/db/Memtable.java
index cbe20fe..e39ccfe 100644
--- a/src/java/org/apache/cassandra/db/Memtable.java
+++ b/src/java/org/apache/cassandra/db/Memtable.java
@@ -141,11 +141,9 @@ public class Memtable
{
long estimatedSize = (long) (currentSize.get() * cfs.liveRatio);
- // cap the estimate at both ends by what the allocator can tell us
+ // liveRatio is just an estimate; we can get a lower bound directly from the allocator
if (estimatedSize < allocator.getMinimumSize())
return allocator.getMinimumSize();
- if (estimatedSize > allocator.getMaximumSize())
- return allocator.getMaximumSize();
return estimatedSize;
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/src/java/org/apache/cassandra/utils/Allocator.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/Allocator.java b/src/java/org/apache/cassandra/utils/Allocator.java
index d11815d..7134353 100644
--- a/src/java/org/apache/cassandra/utils/Allocator.java
+++ b/src/java/org/apache/cassandra/utils/Allocator.java
@@ -38,6 +38,4 @@ public abstract class Allocator
public abstract ByteBuffer allocate(int size);
public abstract long getMinimumSize();
-
- public abstract long getMaximumSize();
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/src/java/org/apache/cassandra/utils/HeapAllocator.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/HeapAllocator.java b/src/java/org/apache/cassandra/utils/HeapAllocator.java
index efe55dd..3d19b98 100644
--- a/src/java/org/apache/cassandra/utils/HeapAllocator.java
+++ b/src/java/org/apache/cassandra/utils/HeapAllocator.java
@@ -38,9 +38,4 @@ public final class HeapAllocator extends Allocator
{
return 0;
}
-
- public long getMaximumSize()
- {
- return Long.MAX_VALUE;
- }
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/src/java/org/apache/cassandra/utils/SlabAllocator.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/SlabAllocator.java b/src/java/org/apache/cassandra/utils/SlabAllocator.java
index 6ff66f8..af38cde 100644
--- a/src/java/org/apache/cassandra/utils/SlabAllocator.java
+++ b/src/java/org/apache/cassandra/utils/SlabAllocator.java
@@ -117,14 +117,6 @@ public class SlabAllocator extends Allocator
}
/**
- * @return an upper bound on how much space has been allocated
- */
- public long getMaximumSize()
- {
- return unslabbed.get() + regionCount * (long)REGION_SIZE;
- }
-
- /**
* A region of memory out of which allocations are sliced.
*
* This serves two purposes:
[2/9] git commit: Start MeteredFlusher earlier to prevent OOM during
CL replay patch by Oleg Anastasyev; reviewed by jbellis for CASSANDRA-7078
Posted by jb...@apache.org.
Start MeteredFlusher earlier to prevent OOM during CL replay
patch by Oleg Anastasyev; reviewed by jbellis for CASSANDRA-7078
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/54648531
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/54648531
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/54648531
Branch: refs/heads/trunk
Commit: 546485310e20dd2c6c67f863cba4b5acd1bae586
Parents: fa8d923
Author: Jonathan Ellis <jb...@apache.org>
Authored: Tue Sep 24 10:44:20 2013 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Tue Sep 24 10:47:08 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/service/CassandraDaemon.java | 7 ++++---
2 files changed, 5 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/54648531/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index ae2ab5e..a5903fa 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
1.2.11
+ * Start MeteredFlusher earlier to prevent OOM during CL replay (CASSANDRA-6087)
* Avoid sending Truncate command to fat clients (CASSANDRA-6088)
* Allow cache-keys-to-save to be set at runtime (CASSANDRA-5980)
* Allow where clause conditions to be in parenthesis (CASSANDRA-6037)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/54648531/src/java/org/apache/cassandra/service/CassandraDaemon.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/CassandraDaemon.java b/src/java/org/apache/cassandra/service/CassandraDaemon.java
index b2fc367..448bb0a 100644
--- a/src/java/org/apache/cassandra/service/CassandraDaemon.java
+++ b/src/java/org/apache/cassandra/service/CassandraDaemon.java
@@ -297,6 +297,10 @@ public class CassandraDaemon
logger.warn("Unable to start GCInspector (currently only supported on the Sun JVM)");
}
+ // MeteredFlusher can block if flush queue fills up, so don't put on scheduledTasks
+ // Start it before commit log, so memtables can flush during commit log replay
+ StorageService.optionalTasks.scheduleWithFixedDelay(new MeteredFlusher(), 1000, 1000, TimeUnit.MILLISECONDS);
+
// replay the log if necessary
try
{
@@ -335,9 +339,6 @@ public class CassandraDaemon
};
StorageService.optionalTasks.schedule(runnable, 5 * 60, TimeUnit.SECONDS);
- // MeteredFlusher can block if flush queue fills up, so don't put on scheduledTasks
- StorageService.optionalTasks.scheduleWithFixedDelay(new MeteredFlusher(), 1000, 1000, TimeUnit.MILLISECONDS);
-
SystemTable.finishStartup();
// start server internals
[7/9] git commit: merge from 1.2
Posted by jb...@apache.org.
merge from 1.2
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/a06a1383
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a06a1383
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a06a1383
Branch: refs/heads/trunk
Commit: a06a138385442084e37a039adeafdfb5889101ef
Parents: 07638f4 16f19a7
Author: Jonathan Ellis <jb...@apache.org>
Authored: Tue Sep 24 20:50:40 2013 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Tue Sep 24 20:50:40 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/db/Memtable.java | 4 +---
src/java/org/apache/cassandra/utils/Allocator.java | 2 --
src/java/org/apache/cassandra/utils/HeapAllocator.java | 5 -----
src/java/org/apache/cassandra/utils/SlabAllocator.java | 8 --------
5 files changed, 2 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/a06a1383/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 830f568,6341e29..fe4efc7
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,10 -1,5 +1,11 @@@
-1.2.11
+2.0.2
+ * Improve memory usage of metadata min/max column names (CASSANDRA-6077)
+ * Fix thrift validation refusing row markers on CQL3 tables (CASSANDRA-6081)
+ * Fix insertion of collections with CAS (CASSANDRA-6069)
+ * Correctly send metadata on SELECT COUNT (CASSANDRA-6080)
+ * Track clients' remote addresses in ClientState (CASSANDRA-6070)
+Merged from 1.2:
+ * Allow estimated memtable size to exceed slab allocator size (CASSANDRA-6078)
* Start MeteredFlusher earlier to prevent OOM during CL replay (CASSANDRA-6087)
* Avoid sending Truncate command to fat clients (CASSANDRA-6088)
* Allow cache-keys-to-save to be set at runtime (CASSANDRA-5980)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/a06a1383/src/java/org/apache/cassandra/db/Memtable.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/a06a1383/src/java/org/apache/cassandra/utils/SlabAllocator.java
----------------------------------------------------------------------
[4/9] git commit: Allow estimated memtable size to exceed slab
allocator size patch by jbellis; reviewed by jasobrown for CASSANDRA-6078
Posted by jb...@apache.org.
Allow estimated memtable size to exceed slab allocator size
patch by jbellis; reviewed by jasobrown for CASSANDRA-6078
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/16f19a7c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/16f19a7c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/16f19a7c
Branch: refs/heads/cassandra-2.0
Commit: 16f19a7cce409da4e8ab9522c29450b17879e8d9
Parents: 5464853
Author: Jonathan Ellis <jb...@apache.org>
Authored: Tue Sep 24 20:46:45 2013 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Tue Sep 24 20:46:45 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/db/Memtable.java | 4 +---
src/java/org/apache/cassandra/utils/Allocator.java | 2 --
src/java/org/apache/cassandra/utils/HeapAllocator.java | 5 -----
src/java/org/apache/cassandra/utils/SlabAllocator.java | 8 --------
5 files changed, 2 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index a5903fa..6341e29 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
1.2.11
+ * Allow estimated memtable size to exceed slab allocator size (CASSANDRA-6078)
* Start MeteredFlusher earlier to prevent OOM during CL replay (CASSANDRA-6087)
* Avoid sending Truncate command to fat clients (CASSANDRA-6088)
* Allow cache-keys-to-save to be set at runtime (CASSANDRA-5980)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/src/java/org/apache/cassandra/db/Memtable.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/Memtable.java b/src/java/org/apache/cassandra/db/Memtable.java
index cbe20fe..e39ccfe 100644
--- a/src/java/org/apache/cassandra/db/Memtable.java
+++ b/src/java/org/apache/cassandra/db/Memtable.java
@@ -141,11 +141,9 @@ public class Memtable
{
long estimatedSize = (long) (currentSize.get() * cfs.liveRatio);
- // cap the estimate at both ends by what the allocator can tell us
+ // liveRatio is just an estimate; we can get a lower bound directly from the allocator
if (estimatedSize < allocator.getMinimumSize())
return allocator.getMinimumSize();
- if (estimatedSize > allocator.getMaximumSize())
- return allocator.getMaximumSize();
return estimatedSize;
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/src/java/org/apache/cassandra/utils/Allocator.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/Allocator.java b/src/java/org/apache/cassandra/utils/Allocator.java
index d11815d..7134353 100644
--- a/src/java/org/apache/cassandra/utils/Allocator.java
+++ b/src/java/org/apache/cassandra/utils/Allocator.java
@@ -38,6 +38,4 @@ public abstract class Allocator
public abstract ByteBuffer allocate(int size);
public abstract long getMinimumSize();
-
- public abstract long getMaximumSize();
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/src/java/org/apache/cassandra/utils/HeapAllocator.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/HeapAllocator.java b/src/java/org/apache/cassandra/utils/HeapAllocator.java
index efe55dd..3d19b98 100644
--- a/src/java/org/apache/cassandra/utils/HeapAllocator.java
+++ b/src/java/org/apache/cassandra/utils/HeapAllocator.java
@@ -38,9 +38,4 @@ public final class HeapAllocator extends Allocator
{
return 0;
}
-
- public long getMaximumSize()
- {
- return Long.MAX_VALUE;
- }
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/src/java/org/apache/cassandra/utils/SlabAllocator.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/SlabAllocator.java b/src/java/org/apache/cassandra/utils/SlabAllocator.java
index 6ff66f8..af38cde 100644
--- a/src/java/org/apache/cassandra/utils/SlabAllocator.java
+++ b/src/java/org/apache/cassandra/utils/SlabAllocator.java
@@ -117,14 +117,6 @@ public class SlabAllocator extends Allocator
}
/**
- * @return an upper bound on how much space has been allocated
- */
- public long getMaximumSize()
- {
- return unslabbed.get() + regionCount * (long)REGION_SIZE;
- }
-
- /**
* A region of memory out of which allocations are sliced.
*
* This serves two purposes:
[8/9] git commit: merge from 1.2
Posted by jb...@apache.org.
merge from 1.2
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/a06a1383
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/a06a1383
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/a06a1383
Branch: refs/heads/cassandra-2.0
Commit: a06a138385442084e37a039adeafdfb5889101ef
Parents: 07638f4 16f19a7
Author: Jonathan Ellis <jb...@apache.org>
Authored: Tue Sep 24 20:50:40 2013 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Tue Sep 24 20:50:40 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/db/Memtable.java | 4 +---
src/java/org/apache/cassandra/utils/Allocator.java | 2 --
src/java/org/apache/cassandra/utils/HeapAllocator.java | 5 -----
src/java/org/apache/cassandra/utils/SlabAllocator.java | 8 --------
5 files changed, 2 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/a06a1383/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 830f568,6341e29..fe4efc7
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,10 -1,5 +1,11 @@@
-1.2.11
+2.0.2
+ * Improve memory usage of metadata min/max column names (CASSANDRA-6077)
+ * Fix thrift validation refusing row markers on CQL3 tables (CASSANDRA-6081)
+ * Fix insertion of collections with CAS (CASSANDRA-6069)
+ * Correctly send metadata on SELECT COUNT (CASSANDRA-6080)
+ * Track clients' remote addresses in ClientState (CASSANDRA-6070)
+Merged from 1.2:
+ * Allow estimated memtable size to exceed slab allocator size (CASSANDRA-6078)
* Start MeteredFlusher earlier to prevent OOM during CL replay (CASSANDRA-6087)
* Avoid sending Truncate command to fat clients (CASSANDRA-6088)
* Allow cache-keys-to-save to be set at runtime (CASSANDRA-5980)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/a06a1383/src/java/org/apache/cassandra/db/Memtable.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/a06a1383/src/java/org/apache/cassandra/utils/SlabAllocator.java
----------------------------------------------------------------------
[6/9] git commit: Allow estimated memtable size to exceed slab
allocator size patch by jbellis; reviewed by jasobrown for CASSANDRA-6078
Posted by jb...@apache.org.
Allow estimated memtable size to exceed slab allocator size
patch by jbellis; reviewed by jasobrown for CASSANDRA-6078
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/16f19a7c
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/16f19a7c
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/16f19a7c
Branch: refs/heads/cassandra-1.2
Commit: 16f19a7cce409da4e8ab9522c29450b17879e8d9
Parents: 5464853
Author: Jonathan Ellis <jb...@apache.org>
Authored: Tue Sep 24 20:46:45 2013 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Tue Sep 24 20:46:45 2013 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
src/java/org/apache/cassandra/db/Memtable.java | 4 +---
src/java/org/apache/cassandra/utils/Allocator.java | 2 --
src/java/org/apache/cassandra/utils/HeapAllocator.java | 5 -----
src/java/org/apache/cassandra/utils/SlabAllocator.java | 8 --------
5 files changed, 2 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index a5903fa..6341e29 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
1.2.11
+ * Allow estimated memtable size to exceed slab allocator size (CASSANDRA-6078)
* Start MeteredFlusher earlier to prevent OOM during CL replay (CASSANDRA-6087)
* Avoid sending Truncate command to fat clients (CASSANDRA-6088)
* Allow cache-keys-to-save to be set at runtime (CASSANDRA-5980)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/src/java/org/apache/cassandra/db/Memtable.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/Memtable.java b/src/java/org/apache/cassandra/db/Memtable.java
index cbe20fe..e39ccfe 100644
--- a/src/java/org/apache/cassandra/db/Memtable.java
+++ b/src/java/org/apache/cassandra/db/Memtable.java
@@ -141,11 +141,9 @@ public class Memtable
{
long estimatedSize = (long) (currentSize.get() * cfs.liveRatio);
- // cap the estimate at both ends by what the allocator can tell us
+ // liveRatio is just an estimate; we can get a lower bound directly from the allocator
if (estimatedSize < allocator.getMinimumSize())
return allocator.getMinimumSize();
- if (estimatedSize > allocator.getMaximumSize())
- return allocator.getMaximumSize();
return estimatedSize;
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/src/java/org/apache/cassandra/utils/Allocator.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/Allocator.java b/src/java/org/apache/cassandra/utils/Allocator.java
index d11815d..7134353 100644
--- a/src/java/org/apache/cassandra/utils/Allocator.java
+++ b/src/java/org/apache/cassandra/utils/Allocator.java
@@ -38,6 +38,4 @@ public abstract class Allocator
public abstract ByteBuffer allocate(int size);
public abstract long getMinimumSize();
-
- public abstract long getMaximumSize();
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/src/java/org/apache/cassandra/utils/HeapAllocator.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/HeapAllocator.java b/src/java/org/apache/cassandra/utils/HeapAllocator.java
index efe55dd..3d19b98 100644
--- a/src/java/org/apache/cassandra/utils/HeapAllocator.java
+++ b/src/java/org/apache/cassandra/utils/HeapAllocator.java
@@ -38,9 +38,4 @@ public final class HeapAllocator extends Allocator
{
return 0;
}
-
- public long getMaximumSize()
- {
- return Long.MAX_VALUE;
- }
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/16f19a7c/src/java/org/apache/cassandra/utils/SlabAllocator.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/SlabAllocator.java b/src/java/org/apache/cassandra/utils/SlabAllocator.java
index 6ff66f8..af38cde 100644
--- a/src/java/org/apache/cassandra/utils/SlabAllocator.java
+++ b/src/java/org/apache/cassandra/utils/SlabAllocator.java
@@ -117,14 +117,6 @@ public class SlabAllocator extends Allocator
}
/**
- * @return an upper bound on how much space has been allocated
- */
- public long getMaximumSize()
- {
- return unslabbed.get() + regionCount * (long)REGION_SIZE;
- }
-
- /**
* A region of memory out of which allocations are sliced.
*
* This serves two purposes: