Aspose Java Version: 18.4
Apache Tomcat Version: 8.5.27
Java Version: 1.8.0_161
I have a problem undeploying a web application. The web application loads a document. The document contains an image. After undeploy the web application, not all references are closed. The behavior cannot reproduce without the image.
A sample web application is attached. TestApp.zip (48.3 KB)
- Deploy web application in Tomcat Web Application Manager. image1.png (52.3 KB)
- Open “/TestApp” - the document from the application is loaded.
- Undeploy “/TestApp” in Tomcat Web Application Manager. image2.png (56.9 KB)
- Open Tomcat-process in Java VisualVM and perform GC and save the heap dump. image3.png (31.1 KB)
- Open heap dump with Eclipse Memory Analyzer.
- Open the histogram and search “WebappClass”. image4.png (13.0 KB)
There should be 5 instances of the ParallelWebappClassLoader, but there are 6 (each time the web application is undeployed, one more is added).
- There is one instance of the ParallelWebappClassLoader whose state is “after_destroy”. image5.png (58.7 KB)
- If you look at “path to GC root”, you can see that there are still references from type DecimalFormat in an Aspose class. image6.png (55.0 KB)
If you need further information, just ask.