What you are asking maybe answer in the code level and pretty deep stuff, at least from user (like me) point of view. But to quote Jonathan in CASSANDRA-3534, Then you will be able to say "use X amount of memory for memtables, Y amount for the cache (and monitor Z amount for the bloom filters)" which makes the old "pressure valve" code obsolete. To explain why is this removed.
There is also another issue discussing which you might find it worth to read https://issues.apache.org/jira/browse/CASSANDRA-3143 If I may ask, are you doing cassandra upgrade from 1.2 to 2.1? Jason On Mon, Dec 29, 2014 at 10:54 PM, Alain RODRIGUEZ <arodr...@gmail.com> wrote: > Thanks for the pointer Jason, > > Yet, I thought that cache and memtables went off-heap only in version 2.1 > and not 2.0 ("As of Cassandra 2.0, there are two major pieces of the > storage engine that still depend on the JVM heap: memtables and the key > cache." --> > http://www.datastax.com/dev/blog/off-heap-memtables-in-cassandra-2-1). So > this "clean up" makes sense to me but in the new 2.1 version of Cassandra. > I also read on the same blog that we might have the choice in/off heap for > memtables (or more precisely just get memtable buffers off-heap) . If this > is true, flush_largest_memtables_at still makes sense. About cache, isn't > key cache still in the heap, even in 2.1 ? > > It looks like the removal of these option looks to me a bit radical and > premature. I guess I am missing something in my reasoning but can't figure > out what exactly. > > C*heers, > > Alain > > 2014-12-29 14:52 GMT+01:00 Jason Wee <peich...@gmail.com>: > >> https://issues.apache.org/jira/browse/CASSANDRA-3534 >> >> On Mon, Dec 29, 2014 at 6:58 PM, Alain RODRIGUEZ <arodr...@gmail.com> >> wrote: >> >>> Hi guys, >>> >>> I am looking at added and dropped option in Cassandra between 1.2.18 and >>> 2.0.11 and this makes me wonder: >>> >>> Why has the index_interval option been removed from cassandra.yaml ? I >>> know we can also define it on a per table basis, yet, this global option >>> was quite useful to tune memory usage. I also know that this index is now >>> kept off-heap, but I can not see when and why this option has been removed, >>> any pointer ? Also it seems this option still usable even if not present by >>> default on cassandra.yaml, but it is marked as deprecated ( >>> https://github.com/apache/cassandra/blob/cassandra-2.0.11/src/java/org/apache/cassandra/config/Config.java#L165). >>> Is this option deprecated on the table schema definition too ? >>> >>> Same kind of questions around the heap "emergency pressure valve" --> >>> "flush_largest_memtables_at", "reduce_cache_sizes_at" and >>> "reduce_cache_capacity_to", except that those params seems to have been >>> dropped directly. Why, is there no more need of it, has some other >>> mechanism replaced it, improving things ? >>> >>> Hope this wasn't already discussed,I was unable to find information >>> about it anyway. >>> >>> C*heers ! >>> >> >> >