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.


Big News.
Starting LMS with LC_ALL=C instead of LC_ALL=en_US=UTF-8 solves the
bug.

My first reaction was "How the f a locale setting can cause a memory
leak of 12GB in an OS used by servers (Netflix included as an
example)??" Because this seems to be a bug of the OS and not of Perl
itself.



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