in reply to any way to control a memory leak
One thing you can try is an explicit undef on any lexicals holding large amounts of data. This is supposed to release the memory back to the general pool for Perl (although not back to the OS on most systems). Also, make sure you are using references whenever passing around large chunks of data to subroutines.
You may be having problems because of your DBD driver. I've seen some versions of DBD::Oracle exhibit bad behavior in terms of memory, mostly due to the constantly changing OCI libraries they depend on. You might want to try stripping out the DBI stuff (or replacing it with dummy calls) and seeing if that makes your memory problem go away. There are configuration parameters you can tweak if this is the problem.
|
|---|