After some investigations on IRC with Maxwell, here are some conclusions.

The key is that Maxwell is running liquidsoap is a pretty constrained
environment, with "only" 200M allowed for a process, and liquidsoap
has a higher memory consumption than that (~500M). The bad::alloc
exception was raised by Taglib because it had no more memory. We could
catch it at the C++/OCaml interface but that would be a pain, and
anyway there would be many other places where to do similar checks. A
more feasible solution would be to check at startup if the memory
limitation seems reasonable, and report a warning in the logs. (I'm
not sure what's the C/OCaml equivalent of ulimit.)

The hiccups where caused by ocaml-cry 0.1.1. The 0.1.2 version fixed
them, and I realized that what was documented as an optimization in
that version is really a bug fix. Everybody should upgrade to 0.1.2,
and Romain will probably release a new liquidsoap-full including it.

There are other problems when running with root.sync=false but this is
normal: it causes liquidsoap to send data too fast to shoutcast, which
has to drop data and maybe take other measures.

Other problems where due to old versions of ocaml-findlib on CentOS.
It seems that it's hard to get good OCaml RPMs, unfortunately.

Cheers,
-- 
David

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Savonet-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/savonet-users

Reply via email to