I am investigating Java Out of memory heap errors. So I created an .hprof
file and loaded it into Eclipse Memory Analyzer Tool which gave some
"Problem Suspects".
First one looks like:
----
One instance of "org.apache.cassandra.db.ColumnFamilyStore" loaded by
"sun.misc.Launcher$AppClassLoader @ 0x613e1bdc8" occupies 984,094,664
(11.64%) bytes. The memory is accumulated in one instance of
"org.apache.cassandra.db.DataTracker$View" loaded by
"sun.misc.Launcher$AppClassLoader @ 0x613e1bdc8".
----
If I click around into the verbiage, I believe I can pick out the name of
a column family but that is about it. Can someone explain what the above
means in more detail and if it is indicative of a problem?
Next one looks like:
-----
•java.lang.Thread @ 0x73e1f74c8 CompactionExecutor:158 - 839,225,000
(9.92%) bytes.
•java.lang.Thread @ 0x717f08178 MutationStage:31 - 809,909,192 (9.58%) bytes.
•java.lang.Thread @ 0x717f082c8 MutationStage:5 - 649,667,472 (7.68%) bytes.
•java.lang.Thread @ 0x717f083a8 MutationStage:21 - 498,081,544 (5.89%) bytes.
•java.lang.Thread @ 0x71b357e70 MutationStage:11 - 444,931,288 (5.26%) bytes.
------
If I click into the verbiage, they above Compaction and Mutations all seem
to be referencing the same column family. Are the above related? Is there
a way I can tell more exactly what is being compacted and/or mutated more
specifically than which column family?