Dave,

Not that I'm a perl/POE guru by any measure, but in thinking about your
problem, I came up with something:

"The heap parameter defines a session's heap. The heap is passed into states
as the $_[HEAP] field. Heaps are anonymous hash references by default."

Taken in context with this:
http://www.perl.com/doc/manual/html/pod/perlfaq4.html#What_s_the_difference_
between_d

I have to ask if you are "undef"ing or "delete"ing your heap variables,
since it seems that undef'ing them might leave some memory in use, thus
causing your memory leak...

HTH,
-Gavin.



> -----Original Message-----
> From: Dave C [mailto:[EMAIL PROTECTED]
> Sent: Thursday, December 29, 2005 11:13 AM
> To: [email protected]
> Subject: Re: Debugging memory usage
> 
> If it helps, I'm running perl 5.8.5 for RHEL4 and POE 0.32.
> 
> I'm using POE to tail multiple logfiles using POE::Wheel::FollowTail to
> pull
> out IP addresses that are attempting to use dictionary attacks to harvest
> email addresses on our network in one session.  I store the originating
> connection's IP, along with a timestamp, and other information in the
> session's heap, then loop through every 5 minutes to expire information
> older than 1 minute (we do alot of mail).  In a child session, I'm
> reporting
> the offending IPs.
> 
> Although I'm deleting the expired members of the heap, RAM is still being
> consumed and not released.
> 
> I've read that a Session won't be cleaned up until all references to it
> have
> been removed.  However, I'm not sure this is ever happening because I'm
> saving a copy of the Wheels in the Session's heap.  Could this be the
> cause
> of my problem, or am I confused?
> 
> Dave

Reply via email to