I have a Java App and we are running into heap issues. We feel there could be a memory leak as heap keeps growing over time. Here is how the histogram looks like.

   1:       3025303      439665320  [C
   2:        904292      310612216  [B
   3:        385084      244774776  [I
   4:       7384953      177238872  java.util.concurrent.ConcurrentSkipListMap$Node
   5:       3953963       94895112  java.lang.Double
   6:       1068745       70512552  [Ljava.lang.Object;
   7:        559816       53742336  java.lang.management.ThreadInfo
   8:       1526344       36632256  java.lang.String
   9:        883927       21214248  java.util.ArrayList
  10:        196823       16137520  [Lio.netty.util.Recycler$DefaultHandle;
  11:        540532       13139904  [Ljava.lang.String;
  12:         68479       12439480  [J
  13:        501950       12046800  java.util.concurrent.ConcurrentSkipListMap$Index
  14:        282440       11297600  java.util.LinkedHashMap$Entry
  15:        122865       10958248  [Ljava.util.HashMap$Node;
  16:        256514       10260560  com.twilio.platform.metrics.DataDogClient$DataDogMetric
  17:        402976        9671424  java.util.LinkedList$Node
  18:        135258        7574448  java.util.LinkedHashMap
  19:        168800        6752000  org.jboss.netty.handler.codec.http.HttpHeaders$HeaderEntry
  20:        201387        6444384  com.codahale.metrics.WeightedSnapshot$WeightedSample
  21:         22797        6401952  [D
  22:        196415        6285280  io.netty.util.Recycler$WeakOrderQueue$Link
  23:          8064        5419008  io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueue
  24:        202768        4866432  java.lang.management.LockInfo

We use codahale metrics all over the code, com.codahale.metrics.WeightedSnapshot$WeightedSample and java.util.concurrent.ConcurrentSkipListMap$Node seems to be created by Reservoir implementation ExponentiallyDecayingReservoir.

I am a newbie to heap analysis and memory leak issues. Can someone help?

0

There are 0 answers