Throughout the decade of being responsible for delivering various IT projects I have involuntarily developed a reflex - whenever I hear someone saying "Our application has a
memory leak", I immediately get shivers running down my spine.
The thing is - you can never estimate the amount of time it takes to solve the leak. Moreover - if the problem is in production, it means immediately allocating the best developer(s) in the team for an impossible-to-estimate period of time, and dropping everything else they were doing.
You're a bit more in luck if the leak is not in production, but the prospect of having to face the unknowns that always accompany memory leaks (How can we reproduce it? What is leaking? Where is it leaking? How long will it take to fix the leak? How can we verify the fix?) is still not very pleasant - to say the least.
However, in the last months I've had several positive encounters with memory leaks that have resulted in the reflex starting to evade. It turns out that it is possible to find the cause of a memory leak - and also fix it! - in half an hour.