-
Plumbr does not find a leak? Our team to the rescue!
We are confident that we have created a good product. Plumbr has detected hundreds of leaks in very different Java apps all around the world. However, we really like to put our money where our mouth is, so we thought it’s time to raise the bar even higher. From now on: If Plumbr fails to detect an existing memory leak in your application, our team will find it for you! As simple as that. If our tool is not good enough then we have to make our hands dirty. No hidden tricks here.
Filed under: Plumbr
-
How much memory do I need (part 1) – What is retained heap?
How much memory will I need? This is a question you might have asked yourself (or others) when building a solution, creating a data structure or choosing an algorithm. Will this graph of mine fit in my 3G heap if it contains 1,000,000 edges and I use a HashMap to store it? Can I use the standard Collections API while building my custom caching solution or is the overhead posed by them too much? Apparently, the answer to the simple question is a bit more complex. In this post we'll take a first peek at it and see how deep the rabbit hole actually is. The answer to the question in the headline comes in several parts.
Filed under: Memory Leaks
-
Solving OutOfMemoryError – no tools will help you!
By now we have published seven articles in the Solving OutOfMemoryError series and covered different aspects of the problem, as well as tested different possible solutions. Before wrapping this all up, we decided to briefly summarize our experience with the different tools out there. What we discovered was that...
Filed under: Plumbr
-
How do leak detectors work – Plumbr case study
We are often asked ‘How does Plumbr work internally?' – ever since we made the tool publicly available. As the number of Plumbr users is growing, the number of these questions is also rising, and we have finally reached a point where it is more efficient to write the answer down than recite it over and over again. In the following article I will describe how memory leaks can be detected in general and which approaches does Plumbr use internally to do its job.
Filed under: Plumbr
-
Busting PermGen Myths
In my latest post I explained the reasons that can cause the java.lang.OutOfMemoryError: PermGen space crashes. Now it is time to talk about possible solutions to the problem. Or, more precisely, about what the Internet suggests for possible solutions. Unfortunately, I can only say that I felt my inner Jamie Hyneman from MythBusters awakening when going through the different "expert opinions" on the subject.
Filed under: Memory Leaks
-
How many Java developers are there in the world?
Oracle says it’s 9,000,000. Wikipedia claims it’s 10,000,000. And the guys from NumberOf.net seem to be the most precise - they know that there are exactly 9,007,346 Java developers out there. Nice numbers. I have used those articles as reference points while speaking about the potential market size for our memory leak detection tool. But something in these numbers has bothered me for years - there is no trustworthy and public analysis behind those numbers. Its just conjured up from thin air. So I finally thought I would do something about it and try to figure it out for good.
Filed under: Java
-
What is a PermGen leak?
What follows is a practical introduction to a specific type of memory problems in Java applications. Namely - we will analyze the errors that cause the java.lang.OutOfMemoryError: PermGen space symptom in the stack trace.
Filed under: Memory Leaks
-
Plumbr 1.1 – we now find PermGen leaks
It’s been only a month since we released 1.0. But we already have something new and cool to ship - as of this version we also find the leaks in the JVM permanent generation.PermGen leaks are a specific type of a memory leak the often happen during the redeploy phase. I guess you all have faced the dreaded java.lang.OutOfMemoryError: PermGen space at some point during your career. And I bet most of you have struggled to find the cause and fix for this. Worry no more - Plumbr now provides you the tools needed to find and fix those errors.
Filed under: Product Updates
-
How to plan for Y Combinator interview
Yes, we were invited by the Y Combinator for the interview, but didn’t have time to write about it back then. Right after we came back we did the final product and infrastructure improvements, and started testing for the official 1.0 release. Now, after having released the product, analyzed the feedback, issued the first invoices, we can sit back for a moment and relive the adventure once more. The article will hopefully be useful for future applicants by sharing our experience from the trip.TL;DR: An Estonian startup who applied to YC. Was invited to YC interview. Got rejected. Still spent a week in the Valley and got tons of interesting meetings, ideas and contacts in return.
Filed under: Plumbr
-
Innocent until proven guilty
I would like to describe a recent case from my career as troubleshooter, which again reminds me that one should not put all his eggs into one basket. And that one should look around and use every possible tool from his toolbox, not just his favorite hammer. And that wrong and unverified assumptions are the most common reasons for long debugging sessions. And mostly of all: you should never jump to conclusions too fast!
Filed under: Memory Leaks