]
Srivathsan Agaram Venkatavaradhan commented on WFLY-4617:
---------------------------------------------------------
We managed to decrease the redundant call that is done by the application. This brings the
performance in par with Jboss 7.1. However we are still seeing relatively higher number of
gc's. We are planning to tweak gc, disable security interceptors in jboss, increase
EJB stateless pooling and see how this performs.
Huge garbage created at regular intervals in Wildfly 8.2.0.Final
----------------------------------------------------------------
Key: WFLY-4617
URL:
https://issues.jboss.org/browse/WFLY-4617
Project: WildFly
Issue Type: Bug
Affects Versions: 8.2.0.Final
Environment: Centos 7, JDK 7
Reporter: Srivathsan Agaram Venkatavaradhan
Assignee: Stuart Douglas
Labels: 8.2.0.Final, gc, undertow, wildfly
Attachments: Char Array Incoming reference, Char Array Retained Objects, Heap
Histogram View, merge paths - ArtifactDetailList, newheap1_Leak_Suspects.zip, Overall
Heap, Overall Memory Usages
Huge garbage is created in wildfly every couple of minutes. Though Full GC is able to
reclaim memory, this causes frequent full gcs, as heap is getting occupied due to the
increase in number of objects created . We can reproduce this issue in 60 users Jmeter
loadtest. This was not the case in Jboss 7.1.1Final.
After analyzing heapdumps, Huge char arrays are created and they are not garbage
collected by Minor GC. Incoming reference for the char array suggest that they have valid
reference to io.undertow.servlet.spec.HttpServletRequestImpl. However full gc is able to
recover the memory. Not sure why attributes in
io.undertow.servlet.spec.HttpServletRequestImpl are not getting gced by minor gc's.
"org.apache.struts.tiles.ComponentContext" is kept in attributes Map by
io.undertow.servlet.spec.HttpServletRequestImpl. org.apache.struts.tiles.ComponentContext
contains a big char array.
We suspect issue with undertow.