Print

Print


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/