Bob Rogers wrote: > 0. I assume you are already using ulimit to trigger the error > sooner, rather than later . . .
I haven't gotten to the point of trying to intentionally reproduce the issue, but ulimit would indeed do the trick. The problem was just recently discovered when running the code on the QA cluster, which is composed of VMs that have 1 GB of RAM, rather than the 16 GB of the production nodes. > 1. Is it OOP? If you can take a count of "new" method calls, and > emit warnings periodically, you might be able to rule some things out. > > 2. Is memory being used for Perl objects, or for non-Perl library > objects? It's what you'd expect to find in 5-year old, poorly written code. A blend of traditional and inside out objects, plus a typical assortment of hashes and arrays. I suspect the problem might be in some recently refactored code that replaced a hash of hashes with a hash of Class::Accessor objects. I need to review the diffs to see what changes are likely culprits. > Out of memory! > (X) The malloc() function returned 0, indicating there was > insufficient remaining memory (or virtual memory) to satisfy the > request. Perl has no option but to exit immediately. > > (Quoth perldiag.) However, I also notice this in perldiag: > > Out of memory during "large" request for %s > (F) The malloc() function returned 0, indicating there was > insufficient remaining memory (or virtual memory) to satisfy the > request. However, the request was judged large enough (compile-time > default is 64K), so a possibility to shut down by trapping this > error is granted. I don't think I've ever seen the latter error. > 3. You might be able to use a "large" request to force a trappable > OOM error, and inspect memory then. So inject some code that periodically allocates 100 KB or something? Maybe, though you'd still have to get lucky. -Tom -- Tom Metro Venture Logic, Newton, MA, USA "Enterprise solutions through open source." Professional Profile: http://tmetro.venturelogic.com/ _______________________________________________ Boston-pm mailing list [email protected] http://mail.pm.org/mailman/listinfo/boston-pm

