Plumbr 3.2 – finding leaks caused by native code
We have released the version 3.2 of the Plumbr agent and encourage everyone to go and grab the latest version from the My Plumbr.
The biggest change in the release is related to leaks from native code. We now trace references from leaked Java objects down to the native code, i.e., we find leaks caused by JNI and other kinds of references from any native code you might have (such as the database drivers for example). A sample of such a report is in the following screenshot:
Other important changes include:
Fine-grained control over analysis. You can now exclude the parts of the code you are certain of not causing a leak with field precision. This gives you a full control over Plumbr. You can now steer a truly efficient analysis.
Distinguishable environments. You can now add aliases to your environments under “My Plumbr” section to make it easier to distinguish different instances in large deployments.
Facilitated support. Plumbr command line client now allows you to upload a reference dump enabling us to help you solve problems quicker. It is now as easy as
java -jar plumbr.jar upload path/to/reference.dump
Existing functionality was improved in several areas, such as:
- Leak detection quality was improved. We now exclude a number of known false positives, such as the Tomcat ByteChunks from the reports generated.
- Array references in reports are now in human-readable format
- Analysis done in offline mode is now easier to conduct due to improved user interface.
We also got rid of a list of bugs, the most annoying ones being:
- Unexpected crashes during post-mortem analysis some of you faced are no longer bugging you
- Offline reports which failed to open on some cases are now available
- Introduced a fix for permission settings on OS level resulting in segfault during a root cause analysis
- excludeClasses property is no longer ignored in configuration
And last but not least, a lot of work has gone into preparing future releases containing truly amazing new problems we are sure we can help you solve as easily as memory leaks. This release already contains a second and improved version of detecting symptoms of other potential problems. As there is a lot of research involved, we cannot publish a release date on any of the new features we are working yet, but stay tuned!