cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thomas Richter <...@tricnet.de>
Subject Re: MemtableThroughput test in ColumnFamily.apply
Date Sat, 25 Feb 2012 18:48:39 GMT
Hi,

I agree, but the problem in our case is that we have rather small
memtables (5MB) and during hinted handoff there are several dozen or
even hundreds of MBs inserted without flushing the tables. And in that
case it makes a difference.

Best,

Thomas

On 02/25/2012 07:06 PM, Jonathan Ellis wrote:
> Makes sense to me, although I don't see it making a material
> difference when there are 1000 mutations in a memtable vs 1001.
> 
> On Sat, Feb 25, 2012 at 11:23 AM, Thomas Richter <tho@tricnet.de> wrote:
>> Hi,
>>
>> while hunting down some memory consumption issues in 0.7.10 I realized
>> that MemtableThroughput condition is tested before writing the new data.
>> As this causes memtables to grow larger than expected I changed
>>
>> Memtable apply(DecoratedKey key, ColumnFamily columnFamily)
>>    {
>>        long start = System.nanoTime();
>>
>>        boolean flushRequested = memtable.isThresholdViolated();
>>        memtable.put(key, columnFamily);
>>        ColumnFamily cachedRow = getRawCachedRow(key);
>>        if (cachedRow != null)
>>            cachedRow.addAll(columnFamily);
>>        writeStats.addNano(System.nanoTime() - start);
>>
>>        return flushRequested ? memtable : null;
>>    }
>>
>> to
>>
>> Memtable apply(DecoratedKey key, ColumnFamily columnFamily)
>>    {
>>        long start = System.nanoTime();
>>
>>
>>        memtable.put(key, columnFamily);
>>        ColumnFamily cachedRow = getRawCachedRow(key);
>>        if (cachedRow != null)
>>            cachedRow.addAll(columnFamily);
>>        writeStats.addNano(System.nanoTime() - start);
>>        boolean flushRequested = memtable.isThresholdViolated();
>>        return flushRequested ? memtable : null;
>>    }
>>
>> Are there any objections to this change? So far it works for me.
>>
>> Best,
>>
>> Thomas
> 
> 
> 

Mime
View raw message