Coming down the pipe

One To Watch: Plumbr, Java memory leak detection

Elliot Bentley

A new tool promises to track your leaks down to exact line in the source code, with minimum overhead.

leaks are a universal problem in every language. So, on the face of
it, Plumbr – which monitors Java
applications for potentially destructive memory leaks – shouldn’t
be so remarkable. Yet CEO Priit Potter claims that his company’s
tool is the first able to identify the exact line number in the
source code causing the issue.

“The problem is, the causes for memory leaks are very
application-specific,” says Potter. “The symptoms are very
universal. You see that the application is getting slower, the
available amount of memory is decreasing, and finally your
application crashes.

“But the cause – the reason for the leak – is very much
application-specific, and that’s why there are no good tools for
it. Because you don’t have any universal checklist.”

Plumbr takes a machine-learning approach, and once installed
“really gets to know your application,” says Potter. “It learns how
application uses memory, how long the objects live in memory, how
they behave in the memory. So then it starts seeing patterns there,
and when Plumbr is confident enough there is a memory leak, then it
announces the leak and tells you which line in the code is the
faulty one.”

The company are so confident in the app’s detective abilities that
they recently announced a new policy: if Plumbr itself fails to
find the source of a leak, the team will find it for you.

Potter says only “two or three” customers have taken Plumbr up on
this offer, and in all cases, Plumbr was detecting the leak
correctly – the customers were simply misreading the results.

“Our conclusion was that we still need to make the report more
understandable,” says Potter.

Still, the team are somewhat modest when discussing the
capabilities of Plumbr. In a
recent blog post
announcing Plumbr 1.2’s reductions in CPU and
memory overhead, they humbly asked: “would you consider a tool with
overhead numbers like this for a production deployment?”

And few companies would be brave enough to include statistics on
their homepage such as “15% of
Plumbr memory leak reports are false alarms” or “your application
uses 23% more CPU with Plumbr” – but this is all part of the
company’s differentiation strategy.

“We are a new name on the market,” says Potter. “So we have to try
to be open, and give more information so that people can make an
informed decision.”

Plumbr licenses start at
$149.99 per year, but you can download a trial version for

comments powered by Disqus