bpa wrote: 
> There have been user of LMS on FreeBSD system for a good while and
> transcoding is bound ot be used - yet I don't recall crash report.
> 
> Could it be that the behaviour (i.e. don't shrink memory allocation from
> "high water" mark is normal for FreeBSD) is normal FreeBSD and that
> perhaps FreeBSD does shrink it back if resources get stretched.  A bit
> like the 500 file handles issues just discussed.
> 
> @Simonef 
> Assuming this is not a LMS bug.
> What is the long term detrimental effect of large memory allocated to
> LMS - does system crash ?  
> What problem could arise with large memory allocated to LMS - do other
> processes fail to start ?

The process will fill all the RAM and then crash. The "long-term"
depends on the transcoding. In extreme cases it can take 2 hours to fill
12GB and then crash.


philippe_44 wrote: 
> I re-read the pipeline code and I can only think that BSD screws up
> either with the reader/writer/source socket by not releasing buffer when
> using localhost sockets or in that code
> > 
Code:
--------------------
  >   > 
  >     if ($writelen) {
  > 
  >                     main::DEBUGLOG && $log->debug("Wrote $writelen bytes to 
pipeline writer");
  > 
  >                     if ($writelen != $pendingSize) {
  >                             ${*$self}{'pipeline_pending_bytes'} = 
substr($pendingBytes, $writelen);
  >                             ${*$self}{'pipeline_pending_size'}  = 
$pendingSize - $writelen;
  >                     }
  >                     else {
  >                             ${*$self}{'pipeline_pending_bytes'} = '';
  >                             ${*$self}{'pipeline_pending_size'}  = 0;
  >                     }
  >             }
  >             else {
  > 
  >                     ${*$self}{'pipeline_pending_bytes'} = $pendingBytes;
  >                     ${*$self}{'pipeline_pending_size'}  = $pendingSize;
  > 
  >                     if ($! != EWOULDBLOCK) {
  >                             return undef;   # reflect error to caller
  >                     }
  > 
  >                     last;
  >             }
  > 
--------------------
> > 
> The 'pipeline_pending_bytes' are not released either when being shrunk
> or re-assigned to the substr() of $pendingBytes. In any case,
> unfortunately, it looks like an obscure BSD+Perl issue that will be
> quasi-impossible to track w/o a full system and my FreeBSD VM is a
> real pain to use on VirtualBox as some of the drivers does not work
> well.
> 
> [edit]: Have you looked more broadly at BSD and Perl and Memory Leak?
> For example, https://github.com/Perl/perl5/issues/17105 talks about an
> issue with syslog. I'm not a real FreeBSD user, I just do quick
> verification when some of my apps are compiled for it.

I'm gonna try the fix mentioned in the github issue you linked. If it
fail I'll setup a vm on my server and I'll send you  credentials. (I'm
unable to send you MP, don't know why, do you have an e-mail addr?)



https://audiodigitale.eu
------------------------------------------------------------------------
Simonef's Profile: http://forums.slimdevices.com/member.php?userid=67438
View this thread: http://forums.slimdevices.com/showthread.php?t=113321

_______________________________________________
unix mailing list
unix@lists.slimdevices.com
http://lists.slimdevices.com/mailman/listinfo/unix

Reply via email to