JVM Heap Exhaustion Pre-Failure Signal
criticalHeap usage climbing to 80-90% without GC relief indicates impending OutOfMemoryError. Cassandra cannot process requests during heap thrashing, causing cascading application timeouts.
Monitor jvm.memory.heap.used against jvm.memory.heap.max. Alert when heap usage exceeds 80% for sustained periods or shows sawtooth pattern flattening at high watermark. Correlate with grafana_process_cpu_seconds to detect GC thrashing CPU spikes.
When heap approaches exhaustion: (1) Review recent GC pause times (jvm.gc.collections.elapsed) for stop-the-world events >500ms, (2) Reduce memtable size or cache configurations to free heap, (3) Investigate heap dumps for memory leaks or unexpected object retention, (4) Scale JVM heap (-Xmx) or add nodes if legitimate workload growth.