<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Not sure we can say this enough. &nbsp;Report bugs to jira.&nbsp;<div><br></div><div>/b</div><div><br><div><div>On Oct 12, 2012, at 7:23 AM, rentmycoder rentmycoder wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>Hi guys,<br><br>I've found a memory leak, and I need your great help to find why is<br>this happening...<br>The situation is simple: I execute a simple bash script using lua<br>popen function as documented in wiki on an extension from the xml<br>dialplan...<br>After 1000 calls the memory usage gets 60Mb and after 10.000 calls, 120mb...<br>Freeswitch becomes very unresponsive and after a time the sip profiles<br>stop working...<br>If I uncomment the popen call in lua, memory leak does not occure...<br><br>The lua script:<br><br>function shell(c)<br> &nbsp;&nbsp;local o, h<br> &nbsp;&nbsp;h = assert(io.popen(c,"r"))<br> &nbsp;&nbsp;o = h:read("*all")<br> &nbsp;&nbsp;h:close()<br> &nbsp;&nbsp;return o<br>end<br>sesson:answer();<br>while(session.ready()) {<br><span class="Apple-tab-span" style="white-space:pre">        </span>local testvar=shell(/opt/test.sh)<br><span class="Apple-tab-span" style="white-space:pre">        </span>session:sleep(1000);<br>}<br>sesson:hangup();<br><br><br><br>The test.sh script:<br>!#/bin/bash<br>echo 12345678901234567890123456789012345678901234567890123456789012345678901234567890<br><br>Thats all... Tha script just writes to standard output and the lua<br>script reads it into a variable...<br><br>I would like to use this mechanism to communicate with an external process...<br>This worked well with asterisk anyway...<br><br>Question#1: what is the reason of this memory usage and how to fix it?<br>Question#2: if not possible, how to communicate with an external<br>process preferably via TCP?<br>I've tried lua sockets, but same memory leaking occurred...<br><br>Tested on: Freeswitch 1.2.3 on debian6 32bit, x86, 4GbRAM<br>Stress test environment: another FS instance registers as a user and<br>start calling target extension with a random (30-60 sec) call<br>timeout...<br>Monitors call count and if call count falls below 100, starts new<br>calls as needed...<br>So there are always 100 live concurrent incoming calls on the test<br>system... which maximum length of 1 minute.<br><br>Thanks a lot...<br>John<br><br>_________________________________________________________________________<br>Professional FreeSWITCH Consulting Services:<br><a href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a><br>http://www.freeswitchsolutions.com<br><br>FreeSWITCH-powered IP PBX: The CudaTel Communication Server<br>http://www.cudatel.com<br><br>Official FreeSWITCH Sites<br>http://www.freeswitch.org<br>http://wiki.freeswitch.org<br>http://www.cluecon.com<br><br>FreeSWITCH-dev mailing list<br>FreeSWITCH-dev@lists.freeswitch.org<br>http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev<br>UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev<br>http://www.freeswitch.org<br></div></blockquote></div><br><div apple-content-edited="true">
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><span class="Apple-style-span" style="orphans: 2; text-align: -webkit-auto; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-align: -webkit-auto; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-align: -webkit-auto; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-align: -webkit-auto; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="orphans: 2; text-align: -webkit-auto; text-indent: 0px; widows: 2; -webkit-text-decorations-in-effect: none; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; ">--</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; ">Brian West</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><a href="mailto:brian@freeswitch.org">brian@freeswitch.org</a></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; ">FreeSWITCH Solutions, LLC</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; ">PO BOX PO BOX 2531</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; ">Brookfield, WI 53008-2531</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; ">Twitter: @FreeSWITCH_Wire</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><a href="http://freeswitchcookbook.com">http://freeswitchcookbook.com</a></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><a href="http://freeswitchbook.com">http://freeswitchbook.com</a></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; ">T: +1.213.286.0410 &nbsp;| &nbsp;F: +1.213.286.0401 &nbsp;| &nbsp;M: +1.918.424.WEST</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; ">iNUM: +883 5100 1286 0410</div></div></div></div></div></div></span></div></span></div></span></div></span></div></span></span>
</div>
<br></div></body></html>