Not to name any names, but a we have had memory allocation issues with a particular DBD package. The memory leak was slow and it only appeared when disconnecting from data sources.I'm probably not the target of that remark, but I know that there is a leak in DBD::Sybase that is related to closing and re-opening connections. Finding and fixing these sorts of leaks can be tricky (in my case for example valgrind doesn't report the leak), and I've again spent some time trying to find it. I've discovered one possible cause that is buried in the Sybase libraries, though a Sybase engineer that I discussed this with didn't seem to think that there was a leak there - so maybe this "leak" is due to memory fragmentation.
Anyway - this may not be related to your situation, and maybe the fix for the driver you are using is comparatively simple - but I still wanted to point out that fixing memory allocation issues in things like perl isn't always simple...