Skip to Content.
Sympa Menu

shibboleth-dev - Re: shibd 1.3 linux memory usage

Subject: Shibboleth Developers

List archive

Re: shibd 1.3 linux memory usage


Chronological Thread 
  • From: André Cruz <>
  • To:
  • Subject: Re: shibd 1.3 linux memory usage
  • Date: Wed, 2 Jan 2008 16:42:02 +0000

On 2008/01/02, at 14:29, Scott Cantor wrote:

I know I've visited this subject numerous times but this time I've
gathered some data. I let the shibd daemon run for a week under
valgrind's Massif and this is the results:

I'm afraid I don't know what any of that tells me. 1.3 is not where the
testing effort should be spent. This is even more true if you're telling me
that there's an RPC problem. That code is gone in 2.0, so this is not
relevant.


I know shiny new toys (2.0) are more motivating than old stuff (1.3) but, as far as I know, 1.3 is the ONLY stable version of the shibboleth SP released so please bear with me...


From what I can see 99% of the growing memory usage I see in Linux
comes from SharChild::svc_create().

I have a hard time believing that, it's just a wrapper around a couple of
Sun RPC calls to wrap the sockets. Perhaps the problem is too much socket
creation, which is going to be much worse with a prefork Apache. Has anybody
produced these results with an Apache that isn't creating so many processes?


I can see that svc_create() is called when a thread is started. In this function a bunch of functions that allocate memory are called (svcfd_create() for example). If a problem happens when svc_register() is called some cleanup code is called: svc_destroy() or the inline version. But I don't see this kind of code being called when the thread finishes... When the while cycle finishes on run(), shouldn't there be the same cleanup code? I must be missing something here. If this code is really missing then that would explain the memory growth.

Regards,
André


Archive powered by MHonArc 2.6.16.

Top of Page