Add @ExpectNoInflaterMemoryLeak
See original GitHub issuejava.util.zip.Inflater
can cause non-heap memory leaks, as explained in this presentation. They can be detected during the application execution thanks to the Leakchecker project. This issue aims to provide an @ExpectNoInflaterMemoryLeak
annotation in QuickPerf to detect this memory leak as soon as possible. The @ExpectNoInflaterMemoryLeak
will be based on the Leakchecker project. This project has an Apache 2.0 license
so that it is ok to detect inflater memory leak in the same way in QuickPerf project. Both in QuickPerf source code and QuickPerf documentation, we will take care of mentioning the Leakchecker project.
This issue is focussed on memory leaks that could come from Inflater
. Later, we could detect other kinds of potential memory leaks, such as those that could be raised from ObjectInputStream
.
Issue Analytics
- State:
- Created 3 years ago
- Comments:5 (1 by maintainers)
Btw. There is also Leak Canary from Square for detecting memory leaks. It’s originally developed for Android apps, but there is some support for applying it for JVM apps: https://square.github.io/leakcanary/recipes/#detecting-leaks-in-jvm-applications . Perhaps some parts could be reused in QuickPerf?
Tomcat has a lot of memory leak protections since version 7: https://cwiki.apache.org/confluence/display/TOMCAT/MemoryLeakProtection
Maybe we can create multiple memory leak detection based on those examples. This could be a very cool addition to what quickperf already does!