CassandraPrometheus

JVM Heap Exhaustion Before Cassandra Node Failure

critical
Resource ContentionUpdated Jan 10, 2026

Cassandra nodes running on the JVM can experience heap exhaustion where heap usage climbs to 80-90% and stays elevated without dropping after GC, leading to OutOfMemoryError or node instability. This manifests as timeout errors at the application layer before the node crashes.

How to detect:

Monitor JVM heap memory usage (jvm.memory.heap.used) for a sawtooth pattern. Alert when heap climbs to 80-90% and remains elevated without sharp drops after GC runs. Correlate with frequent GC pauses >500ms (jvm.gc.collections.elapsed) and application-layer timeouts.

Recommended action:

Tune JVM heap size parameters (-Xms/-Xmx), reduce temporary allocations in application code, or add hardware resources. Investigate memtables, caches, and internal structure sizes.