question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Add @ExpectNoInflaterMemoryLeak

See original GitHub issue

java.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:open
  • Created 3 years ago
  • Comments:5 (1 by maintainers)

github_iconTop GitHub Comments

1reaction
lhotaricommented, Dec 19, 2020

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?

1reaction
loicmathieucommented, Sep 3, 2020

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!

Read more comments on GitHub >

github_iconTop Results From Across the Web

Memory leak in C++ and How to avoid it?
Memory leakage occurs in C++ when programmers allocates memory by using new keyword and forgets to deallocate the memory by using delete() ...
Read more >
Memory leak on adding and removing components #13851
Description of the bug The following snippet results a memory leak: @Push @Route("test") @Viewport("width=device-width, initial-scale=1") ...
Read more >
Using Performance Monitor to Find a User-Mode Memory ...
Launch Performance Monitor. Add the following counters: Process-->Private Bytes (for each process you want to examine). Process-->Virtual Bytes ...
Read more >
Understanding Memory Leaks in Java
Learn what memory leaks are in Java, how to recognize them at runtime, what causes them, and strategies for preventing them.
Read more >
possible EventEmitter memory leak detected - node.js
Only increase the limit if you know why so many listeners are being added and are confident it's what you really want. I...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found