then I guess Memtable.getLiveSize() should not rely on the
currentThroughput for size calculation,
an extra var currentSize is needed during the bookkeeping of resolve()


On Tue, May 24, 2011 at 9:47 AM, Jonathan Ellis <jbel...@gmail.com> wrote:
> "the total amount of traffic that has gone into the Memtable" is how
> throughput is defined, so this is working as expected.
>
> On Tue, May 24, 2011 at 11:15 AM, Yang <teddyyyy...@gmail.com> wrote:
>> if you have only counter columns in your keyspace, and do a lot of
>> updates on a few keys,
>> the getLiveSize() of memtable actually returns the total amount of
>> traffic that has gone into the Memtable,
>> not the real size,
>> so you end up producing very small SStables, with only a few KBytes.
>> (I have already changed the CF.memtable_throughput memtable_operations
>> memtable_flush_after params )
>>
>>
>>
>> this can be changed easily by modifying the CounterColumn.resolve() so
>> that it updates the
>> currentThroughput with the ***difference ****  of old column size and
>> new column size, not just the size of new column.
>
> --
> Jonathan Ellis
> Project Chair, Apache Cassandra
> co-founder of DataStax, the source for professional Cassandra support
> http://www.datastax.com
>

Reply via email to