It was suggested that I run supervisor through valgrind, which I did (to
find a bit of memory not free'd in destructor).

But I see a bunch of messages from the stack, such as:

==26457== 55,395 (15,552 direct, 39,843 indirect) bytes in 27 blocks are
definitely lost in loss record 102 of 113
==26457==    at 0x4A06205: operator new(unsigned long)
(vg_replace_malloc.c:167)
==26457==    by 0x4F732F4: HttpBody::createBody(char const*, long, char
const*, char const*) (HttpBody.cpp:254)
==26457==    by 0x4F78D1D: HttpMessage::parseBody(char const*, long)
(HttpMessage.cpp:375)
==26457==    by 0x4F792AF: HttpMessage::read(OsSocket*, long,
UtlString*, int) (HttpMessage.cpp:1617)
==26457==    by 0x4F73832: HttpConnection::run(void*)
(HttpConnection.cpp:100)
==26457==    by 0x52B5BE9: OsTaskLinux::taskEntry(void*)
(OsTaskLinux.cpp:705)
==26457==    by 0x3855406406: start_thread (in /lib64/libpthread-2.7.so)
==26457==    by 0x38548D4B0C: clone (in /lib64/libc-2.7.so)

and

==26457== 28,950 (7,480 direct, 21,470 indirect) bytes in 55 blocks are
definitely lost in loss record 96 of 113
==26457==    at 0x4A06205: operator new(unsigned long)
(vg_replace_malloc.c:167)
==26457==    by 0x50010C5: XmlRpcBody::parseValue(TiXmlNode*, int,
UtlString&) (XmlRpcBody.cpp:355)
==26457==    by 0x500296C: XmlRpcDispatch::parseXmlRpcRequest(UtlString
const&, XmlRpcMethodContainer*&, UtlSList&, XmlRpcResponse&)
(XmlRpcDispatch.cpp:344)
==26457==    by 0x5002D9E:
XmlRpcDispatch::processRequest(HttpRequestContext const&, HttpMessage
const&, HttpMessage*&) (XmlRpcDispatch.cpp:184)
==26457==    by 0x4F8077A: HttpServer::processRequest(HttpMessage
const&, HttpMessage*&, OsConnectionSocket const*) (HttpServer.cpp:620)
==26457==    by 0x4F73924: HttpConnection::run(void*)
(HttpConnection.cpp:113)
==26457==    by 0x52B5BE9: OsTaskLinux::taskEntry(void*)
(OsTaskLinux.cpp:705)
==26457==    by 0x3855406406: start_thread (in /lib64/libpthread-2.7.so)
==26457==    by 0x38548D4B0C: clone (in /lib64/libc-2.7.so)

which suggest we might be leaking in there somewhere (I had a quick look
and found a call to cleanup at XmlRpcDispatch.cpp:210 which would seem
to do it, maybe it's not working)
_______________________________________________
sipx-dev mailing list
[email protected]
List Archive: http://list.sipfoundry.org/archive/sipx-dev
Unsubscribe: http://list.sipfoundry.org/mailman/listinfo/sipx-dev

Reply via email to