We put a bunch of effort into reducing GC pauses in 1.0, which worked great on our synthetic benchmarks but I don't have much data on how well that's working in practice, on real-world workloads.
If you're running a Cassandra app in production or testing, I'd appreciate it if you could send me [either personally or via the list] the results of enabling GC logging on one of your nodes by uncommenting these lines in cassandra-env.sh: # JVM_OPTS="$JVM_OPTS -XX:+PrintGCDetails" # JVM_OPTS="$JVM_OPTS -XX:+PrintGCDateStamps" # JVM_OPTS="$JVM_OPTS -XX:+PrintHeapAtGC" # JVM_OPTS="$JVM_OPTS -XX:+PrintTenuringDistribution" # JVM_OPTS="$JVM_OPTS -XX:+PrintGCApplicationStoppedTime" # JVM_OPTS="$JVM_OPTS -XX:+PrintPromotionFailure" # JVM_OPTS="$JVM_OPTS -XX:PrintFLSStatistics=1" # JVM_OPTS="$JVM_OPTS -Xloggc:/var/log/cassandra/gc-`date +%s`.log" (If you're running on Windows, you'll need to add these options manually to cassandra.bat, and hardcode the log filename.) Besides the log file itself it would be useful to know JVM version, how many cores your machine has, any GC options you have changed from the default, and a high-level description of your workload (write heavy? read heavy? slice reads, or query columns by name? row cache enabled, and if so, serializingcache with jna, or on-heap cache?) Thanks! P.S. It would be simplest if you can provide results for 1.0.7, which IMO you would be well-served by upgrading to anyway, but all results for 1.0.2+ are useful if you specify the version you are on. -- Jonathan Ellis Project Chair, Apache Cassandra co-founder of DataStax, the source for professional Cassandra support http://www.datastax.com