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 2009/09/23 20:44:16 UTC
svn commit: r818194 - in /incubator/cassandra/trunk: conf/storage-conf.xml
src/java/org/apache/cassandra/db/BinaryMemtable.java
Author: jbellis
Date: Wed Sep 23 18:44:16 2009
New Revision: 818194
URL: http://svn.apache.org/viewvc?rev=818194&view=rev
Log:
add back BinaryMemtable tuneable, but remove the hardcoded 50k limit
Modified:
incubator/cassandra/trunk/conf/storage-conf.xml
incubator/cassandra/trunk/src/java/org/apache/cassandra/db/BinaryMemtable.java
Modified: incubator/cassandra/trunk/conf/storage-conf.xml
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/conf/storage-conf.xml?rev=818194&r1=818193&r2=818194&view=diff
==============================================================================
--- incubator/cassandra/trunk/conf/storage-conf.xml (original)
+++ incubator/cassandra/trunk/conf/storage-conf.xml Wed Sep 23 18:44:16 2009
@@ -304,4 +304,9 @@
-->
<BinaryMemtableSizeInMB>256</BinaryMemtableSizeInMB>
+ <!--
+ ~ The threshold size in megabytes the binary memtable must grow to, before it's submitted for flushing to disk.
+ -->
+ <BinaryMemtableSizeInMB>256</BinaryMemtableSizeInMB>
+
</Storage>
Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/db/BinaryMemtable.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/db/BinaryMemtable.java?rev=818194&r1=818193&r2=818194&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/db/BinaryMemtable.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/db/BinaryMemtable.java Wed Sep 23 18:44:16 2009
@@ -39,9 +39,8 @@
public class BinaryMemtable implements IFlushable
{
- private static Logger logger_ = Logger.getLogger( Memtable.class );
- private int threshold_ = DatabaseDescriptor.getMemtableSize()*1024*1024;
- private int thresholdCount_ = (int)(DatabaseDescriptor.getMemtableObjectCount()*1024*1024);
+ private static Logger logger_ = Logger.getLogger(BinaryMemtable.class);
+ private int threshold_ = DatabaseDescriptor.getBMTThreshold() * 1024 * 1024;
private AtomicInteger currentSize_ = new AtomicInteger(0);
/* Table and ColumnFamily name are used to determine the ColumnFamilyStore */
@@ -74,13 +73,7 @@
boolean isThresholdViolated()
{
- if (currentSize_.get() >= threshold_ || columnFamilies_.size() > thresholdCount_)
- {
- if (logger_.isDebugEnabled())
- logger_.debug("CURRENT SIZE:" + currentSize_.get());
- return true;
- }
- return false;
+ return currentSize_.get() >= threshold_;
}
String getColumnFamily()
@@ -95,7 +88,7 @@
*/
void put(String key, byte[] buffer) throws IOException
{
- if (isThresholdViolated() )
+ if (isThresholdViolated())
{
lock_.lock();
try