Permgen leak detection polished – Plumbr 2.1 released

March 21, 2013 by Ivo Mägi

We have both the good and the bad news for you in this version upgrade. The good news is that – we have significantly improved permgen leak detection based on data gathered from the hundreds of reports we have detected since the initial version was launched back in July 2012. Based on the data and feedback we can now say this functionality is matured and stable.

The sad news is also related to the maturity of this functionality – we announce that starting from April 8th, 2013 the permgen leak reports will no longer be available for free. So – take the chance while it is still possible, download Plumbr and get rid of all your existing permgen leaks without us charging you a dime.

In more technical terms – we have reduced the number of false positives given by permgen leak detection algorithm by 40% and also gotten rid of the annoying duplicates encountered when interpreting the leak reports.

We have also worked on other issues and are proud to present that starting from the version 2.1:

  • We are able to instrument more classes, so the chances that we have missed a leak have been reduced. For how much – we still need to gather statistics but we expect 2-4% of leak detection improvement from here.
  • We have a more robust native library handling in place. This fixes the bug for those of you who had to specify the location of agentpath in your startup scripts even though our installation guide did not require you to.
  • Temporary resources are systematically cleaned. Interpreting – we clean up what we create during Plumbr runs, so no more temporary files clogging up your hard drive.
  • Improved the UI. List of reports and attachment dialogue are now accessible from the systray menu. And besides the new functionality we are now forking the UI into a separate process for better isolation – no more tight dependencies between your application and Plumbr UI.
  • Error reporting and debug log changes. Now you should be able to interpret the messages about missing resources, invalid installation, etc in more understandable language.
  • And a pile of bugs were hunted down. Most annoying of which were the cases where our users could not get our demo application running on Mac OS X with JDK 7 and the rare cases where the command line dump analyzer hung the process.

If you managed to get this far, now it is really the time to go and download new and updated version of Plumbr. And stay tuned, we have some major improvements brewing we hope to announce during the next month or so. The best way to find out about it is to subscribe to our Twitter stream.

Can't figure out what causes your OutOfMemoryError? Read more


Can't figure out what causes your OutOfMemoryError? Read more

You cannot predict the way you die
When debugging a situation where systems are failing due to the lack of resources, you can no longer count on anything. Seemingly unrelated changes can trigger completely different messages and control flows within the JVM. Read more
Tuning GC - it does not have to be that hard
Solving GC pauses is a complex task. If you do not believe our words, check out the recent LinkedIn experience in garbage collection optimization. It is a complex and tedious task, so we are glad to report we have a whole lot simpler solution in mind Read more
Building a nirvana
We have invested a lot into our continuous integration / delivery infrastructure. As of now we can say that the Jenkins-orchestrated gang consisting of Ansible, Vagrant, Gradle, LiveRebel and TestNG is something an engineer can call a nirvana. Read more
Creative way to handle OutOfMemoryError
Wish to spend a day troubleshooting? Or make enemies among sysops? Registering pkill java to OutOfMemoryError events is one darn good way to achieve those goals. Read more