I can confirm significant Freeswitch process memory growth over time when ESL is used intensively, from 100MB in normal case to 700-900MB after few hours of high esl load, though I have no valgrind check results, as I can't do tests at production server. With less than 300 channels in peak we have 900MB FS process size, never shrinking back :( 2013/11/12 gggyniidt <gggyniidt@gmail.com>
Hello Using ESL found a memory leak problem valgrind --tool=memcheck --leak-check=full ./myprog output as follows
==6872== 29,986 (88 direct, 29,898 indirect) bytes in 1 blocks are definitely lost in loss record 401 of 408 ==6872== at 0x4A06AAA: malloc (vg_replace_malloc.c:291) ==6872== by 0x413941: esl_event_create_subclass (esl_event.c:179)
==6872== by 0x410DC3: esl_recv_event (esl.c:1245)
==6872== by 0x411675: esl_send_recv_timed (esl.c:1517)
==6872== by 0x411C1B: esl_execute (esl.c:555)
==6872== by 0x408758: CRBT::Route() (CRBT.cpp:42)
==6872== by 0x40A02F: DPL::route() (DPL.cpp:234)
==6872== by 0x40FCA8: mycallback(int, int, sockaddr_in*) (listener.cpp:47) ==6872== by 0x41032F: client_thread (esl.c:654)
==6872== by 0x413FC7: thread_launch (esl_threadmutex.c:74)
==6872== by 0x34CAA07850: start_thread (in /lib64/libpthread-2.12.so)
==6872== by 0x34CA6E890C: clone (in /lib64/libc-2.12.so)
==6872== LEAK SUMMARY: ==6872== definitely lost: 88 bytes in 1 blocks ==6872== indirectly lost: 29,898 bytes in 76 blocks ==6872== possibly lost: 550,082 bytes in 51 blocks ==6872== still reachable: 832,937 bytes in 840 blocks ==6872== suppressed: 0 bytes in 0 blocks ==6872== Reachable blocks (those to which a pointer was found) are not shown. ==6872== To see them, rerun with: --leak-check=full --show-leak-kinds=all
Part of my code is as follows
bool CRBT::Route() { string data = "ringback=file_string://"; data.append(FileName);
esl_execute(handle, "set", data.c_str(), NULL); return true; }
The OS version is Centos x86_64 6.3 The Freeswitch version is 1.2.13
Thanks for your help.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
-- Best regards, Dmitry Sytchev, IT Engineer