URL:
<http://savannah.cern.ch/bugs/?83376>
Summary: Xrootd Proxy memory usage grows on Linux
Project: XROOTD
Submitted by: wilko
Submitted on: 2011-06-17 19:29
Severity: 3 - Normal
Priority: 5 - Normal
Status: None
Privacy: Public
Assigned to: None
Originator Email:
Open/Closed: Open
Discussion Lock: Any
Fixed by commit(s):
_______________________________________________________
Details:
We are running a xrootd proxy on Linux and its memory size (virtual size)
grows to many GB until it has to be restarted.
On Solaris the memory is not growing or if it is growing at all much slower
compared to Linux.
I looked into memory leaks but could not find any obvious problem.
We suspect that the issue might be related to threads. Specifically, most of
the threads in the client are created as joinable threads. The assumption is
that in Linux, none of the thread resources (specifically the stack) are
freed until the thread is joined. This appears to be different in Solaris
where only the final RC is saved until joining (a little test program showed
the different behavior between Linux and Solaris).
So, if the client is not joining all the threads it creates, you wind up
accumulating storage (i.e. the stack). This seems to be consistent with the
storage leak we see (i.e., always the same size always a contiguous
segment).
_______________________________________________________
Reply to this item at:
<http://savannah.cern.ch/bugs/?83376>
_______________________________________________
Message sent via/by LCG Savannah
http://savannah.cern.ch/
|