HTTP::DAV leaking memory?

cosimo on 2008-07-29T09:25:53

Yesterday I started investigating an "interesting" problem in our shiny new "Storage abstraction layer".

It's a new set of classes designed to solve the problem of how to handle static resources like images, thumbnails, favicons, ... providing fault-tolerance and distributing them automatically onto pools of static servers. Kind of our little own 'CDN' :)

Anyway, that is using WebDAV as one of the server "backends", and in fact, we're now using mod_dav enabled servers to distribute our content.

Now I'm in the process of exporting hundreds of thousands of pictures, in 5 different formats, with a single script to many DAV servers, I'm noticing a steady increase of memory usage.

I tried to track down the problem, and it seems to live within HTTP::DAV, where there's at least one circular reference between HTTP::DAV::Resource back to HTTP::DAV parent object.

I tried also to get some information out of Perlmonks, or web searching in general about this issue, but found nothing.

Any pointers or similar experiences?