[Spread-users] Memory leak? FD leak? Other?

David Shaw dshaw at archivas.com
Fri Aug 20 12:17:15 EDT 2004


On Fri, Aug 20, 2004 at 12:47:51AM -0400, Jonathan Stanton wrote:
> I understand what you are getting at. I have seen something I think is 
> related, I have to look back at my bug archives and find it. I'll look 
> into it tomorrow. What I think might be happening is that the Spread 
> daemon may not be noticing that the client program has quit and so it 
> still has the fd's active (like you noticed) and thus still has all of the 
> messages stored (since it still thinks the client is alive).
> 
> Usually Spread notices a client death immediately because of an error on 
> the tcp/unix socket, but I sort of remember a case where it didn't and 
> that's what I want to check. 
> 
> If the fd's are released (which is a good proxy for the daemon noticing 
> the client death) and the memory is not released, then that indicates a 
> different sort of case. Have you triggered that case, or only the one 
> where both the fds and memory are not reclaimed?

I believe I have triggered both.  No memory is released by the daemon,
and some fds are left behind when using the sabuse program I sent.

Currently, the sabuse program connects to spread and justs calls
SP_multicast over and over again.  If you modify the program to
SP_connect, send 500 messages, then SP_disconnect and then repeat the
whole connect-send-disconnect cycle over and over, you get different
behavior when killing sabuse: there are no fds left open in spread,
but the memory is still not returned.

David




More information about the Spread-users mailing list