[ http://dev.sourcefabric.org/browse/LS-508?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15745#action_15745 ]
Romain Beauxis commented on LS-508: ----------------------------------- Ok, so I found the natural solution.. I just commited some changes in ocaml-cry. Now, one unique socket dedicated to metadata updates is created for each output.icecast connection. That way, metadata update always reuse the same socket and there is no problem of sockets remaning open etc.. I have updated the .zip (same name). Please try it and if (hopefully) this fixes the issue, please let us know or close it :) Additionally, while looking for some documentation I realized the socket closing in windows32 is kinda problematic. You may want for your server to check the timeout set by window for TIME_WAIT and CLOSE_WAIT.. > "Too Many Open Files" crashes after 1024 opened files [Windows version] [1.0 > beta] > ---------------------------------------------------------------------------------- > > Key: LS-508 > URL: http://dev.sourcefabric.org/browse/LS-508 > Project: Liquidsoap > Issue Type: Bug > Components: Liquidsoap > Affects Versions: 1.0 beta > Environment: Windows 2003 server R2, Windows 7 SP1. > Liquidsoap 1.0.0 beta 1 ( liquidsoap-win32-snapshot-2011-04-06.zip ) > Reporter: Dmitry > Assignee: Romain Beauxis > Priority: Blocker > Fix For: 1.0 > > > Liquidsoap for windows crashes after 1024 opened files. > First I tried to use directory with files as source for playlist. Get the > error: http://screencast.com/t/dadCWNvSWfg > Config: > set("log.file",false) > set("log.stdout",true) > set("log.level",4) > output.icecast(%aacplus(bitrate=32),host="localhost", port=8000, > password="hackme", fallible=true, mount="test32pl", > playlist("C:\Streaming\liquidsoap\short")) > Next I tried to use request.dynamic to achieve the same functionality. > Similar error: http://screencast.com/t/ANDOpmB5e > Config: > set("log.file",false) > set("log.stdout",true) > set("log.level",4) > def request() = > path = list.hd(get_process_lines("scheduler.exe")) > request.create(path) > end > reqdyn = request.dynamic(request) > list = fallback(track_sensitive=true,[reqdyn, single("silent.mp3")]) > output.icecast(%aacplus(bitrate=32),host="localhost", port=8000, > password="hackme", fallible=true, mount="test32app", list) > Scheduler.exe - application that returns rantom mp3 file from directory with > music. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://dev.sourcefabric.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira ------------------------------------------------------------------------------ Benefiting from Server Virtualization: Beyond Initial Workload Consolidation -- Increasing the use of server virtualization is a top priority.Virtualization can reduce costs, simplify management, and improve application availability and disaster protection. Learn more about boosting the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev _______________________________________________ Savonet-devl mailing list Savonet-devl@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/savonet-devl