Home of the Squeezebox™ & Transporter® network music players.
Results 1 to 10 of 10
  1. #1
    Junior Member
    Join Date
    Jan 2021
    Posts
    7

    Spotty 4.4.6 - out of disk space error - please help!

    Hello

    First of all thanks for the great efforts in keeping this plugin up to date.
    I am new to the forum ,actually this is my first post and I've just registered for this question.

    I'm running a VERY old NAS D-link dns-325 , and I'm using the fun_plug to enable it. You can search the web but it's just a trick specific to this nas.
    This is just my past time for the week to make use of it instead of trashing it...
    Kernel is very old, 2.X but that's not the point

    I've managed (with some effort!) to install squeezebox server 7.9.4 on this nas directly running on the os (not from the d-link interface) and together to twonky media server these are my streaming app

    My use case is to use shairport+spotty+ulpnbridge plugins to stream audio from my phone to an old DLNA player (old but very good) I have

    Everything works fine in the squeezebox server apart from Spotty. I am able to stream airplay audio using shairport but spotty does not work
    I am able to find the spotify connect player (DLNA player using upnp bridge plugin) , I connect to it but the moment I hit play it crashes


    I've isolated the issues by looking at the debug log and it seems actually that the problem is a very specific one and it's disk space in the /tmp disk

    Infact I get this message:

    thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Error { repr: Os { code: 28, message: "No space left on device" } }', /home/mh/git/rust-cross-libs/rust-git/src/libcore/result.rs:906:4

    I've cheked and in the /tmp area files called .tmp* are being created as soon as I hit play. Problem is the /tmp is a very tiny (it's mapped to ram) so it'll never work , especially with 320k encoding

    Can anyone suggest me a solution? How to change how spotty plugin use this /tmp area as buffer?

    Is it possible to change the behaviour of spotty so that instead the /tmp dir (mapped directly to ram memory) another area (mapped to disk) is used? In my case this area would be : /ffp/tmp


    Thanks in advance!

  2. #2
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    20,524

    Spotty 4.4.6 - out of disk space error -please help!

    > THREAD 'MAIN' PANICKED AT 'CALLED `RESULT::UNWRAP()` ON AN `ERR` VALUE:
    > ERROR { REPR: OS { CODE: 28, MESSAGE: "NO SPACE LEFT ON DEVICE" } }',
    > /HOME/MH/GIT/RUST-CROSS-LIBS/RUST-GIT/SRC/LIBCORE/RESULT.RS:906:4
    >
    > I've cheked and in the /tmp area files called .tmp* are being created as
    > soon as I hit play. Problem is the /tmp is a very tiny (it's mapped to
    > ram) so it'll never work , especially with 320k encoding


    Hmm... that's odd, as it should be using your LMS cache folder rather
    than /tmp. If you run:

    ps ax | fgrep spotty

    you should see something like:

    spotty-hf -c /opt/git/slimserver/Cache/spotty/246f28d2d364

    Can you confirm you see the -c (--cache) parameter?

    --

    Michael

  3. #3
    Junior Member
    Join Date
    Jan 2021
    Posts
    7
    Hi, thanks for your reply

    Yes I see indeed what you say, it's cached to the correct disk (USB key disk)


    19257 ? Sl 0:00 /mnt/USB/HD_c1/ffp/lib/logitechmediaserver-7.9.4-1603273368-noCPAN/Cache/InstalledPlugins/Plugins/SpottyARMLegacyBin/Bin/spotty -c /mnt/USB/HD_c1/ffp/lib/logitechmediaserver-7.9.4-1603273368-noCPAN/Cache/spotty/691db67a -n Pioneer BDP --disable-audio-cache --bitrate 96 --player-mac bb:bb:1c:8b:dd:26 --lms 192.168.1.50:9000 --disable-discovery



    but the moment I hit play it starts writing to both cache and /tmp dir:


    Only these files are written to cache dir:

    drwxrwxrwx 2 squeezeboxserver allaccount 4096 Jan 13 21:06 files
    drwxrwxrwx 3 squeezeboxserver allaccount 4096 Jan 13 23:05 .
    drwxrwxrwx 3 squeezeboxserver allaccount 4096 Jan 15 14:31 ..
    -rwxrwxrwx 1 squeezeboxserver allaccount 5 Jan 17 11:56 volume
    -rwxrwxrwx 1 squeezeboxserver allaccount 237 Jan 17 11:56 credentials.json


    But the .tmp* files are still written to the /tmp dir (directly to RAM)

    -rw------- 1 squeezeboxserver allaccount 11687296 Jan 17 11:56 .tmpxt5o9j
    -rw------- 1 squeezeboxserver allaccount 11687296 Jan 17 11:56 .tmplUL5FJ
    -rw------- 1 squeezeboxserver allaccount 3874452 Jan 17 11:56 .tmp2nJa3v
    drwxrwxrwt 4 root root 1024 Jan 17 11:56 .
    -rw------- 1 squeezeboxserver allaccount 13946172 Jan 17 11:56 .tmpVENbzw


    and this creates the disk full and everything stops

    root@Agata:~# df -k /tmp
    Filesystem 1K-blocks Used Available Use% Mounted on
    /dev/ram0 9911 9399 0 100% /

  4. #4
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    20,524

    Spotty 4.4.6 - out of disk space error -please help!

    > /mnt/USB/HD_c1/ffp/lib/logitechmediaserver-7.9.4-1603273368-noCPAN/Cache/InstalledPlugins/Plugins/SpottyARMLegacyBin/Bin/spotty

    That looks like a... non-standard installation? What spotty helper are
    you using? Did you have to install the legacy helpers?

    Maybe enabling logging for player.source would tell us more.

    That said: I believe you should just stop running LMS on your NAS. It
    seems to be a lot of effort to get it working, with probably not so
    great performance anyway. You say your system was "VERY old" yourself.
    Let it do what it's supposed to do: serve files. Then get a Raspberry Pi
    to run picoreplayer.org with LMS. It'll just work.
    --

    Michael

  5. #5
    Junior Member
    Join Date
    Jan 2021
    Posts
    7
    Hi

    Yes I know, I already have a raspberry pi working using max2play. This is just my challenge for the week
    I perfectly get your point but after all everything is working....forget the linux installation , yes it's of course is not standard....
    but I've already managed to have it everything working, Airplay and all LMS apps work.
    It's only Spotty that is giving me headache and actually also Spotty is working but it runs out of disk space on /tmp

    I've actually just played a 10 seconds Spotify track and it actually works but as soon as /tmp is filled up it breaks. So it's just a matter to write those .tmp* files on disk and not /tmp=ram

    I've also tried another squeezelite player I have (max2play) , so this time we don't use the upnp/dlna bridge plugin (thought it could be source of trouble) but the behaviour is exactly the same

  6. #6
    Junior Member
    Join Date
    Jan 2021
    Posts
    7
    Maybe enabling logging for player.source would tell us more.

    How do I do that?

  7. #7
    Junior Member
    Join Date
    Jan 2021
    Posts
    7
    Ok I solved it by simply replacing /tmp with this link in ./ and now it works

    lrwxrwxrwx 1 root root 18 Jan 17 14:41 tmp -> /mnt/USB/HD_c1/tmp


    Thanks!

  8. #8
    Junior Member
    Join Date
    Jan 2021
    Posts
    7
    Just a follow up for reference that the correct fix for this would be to add a line in the /etc/fstab
    here adding 50Mb but really up to you

    tmpfs /tmp tmpfs nodev,nosuid,size=50M 0 0


    this way /tmp will be linked to more reliable disk access

  9. #9
    Babelfish's Best Boy mherger's Avatar
    Join Date
    Apr 2005
    Location
    Switzerland
    Posts
    20,524

    Spotty 4.4.6 - out of disk space error -please help!

    > Just a follow up for reference that the correct fix for this would be to
    > add a line in the /etc/fstab
    > here adding 50Mb but really up to you


    I was wondering: does this only happen when you stream using Spotify
    Connect, or in LMS mode, too?


    --

    Michael

  10. #10
    Junior Member
    Join Date
    Jan 2021
    Posts
    7
    This only happens with Spotty and only because of for those .tmp* files being created on the fly (some sort of encoding?).
    I can use ShairTunes2 and tunein and other radios no problem, these work very well for prolonged period of time together with Upnp/dlna bridge plugin (I have a high fi dlna player I want to use)
    I believe is fine as far as you stream data, but if some sort of encoding happens (i.e. some bigger files being created) then since by default /tmp is mapped on /dev/ram0 is filled up. Mind you ram is only 10MB on this thing!!!
    After defining the /tmp disk separately ram is not filled up anymore and things work
    Having said that, even so. spotty only works with 96k (320kb long buffering time and skips a lot) and flow of data breaks sometimes, maybe really hitting the limit of the hardware. So I'm really using spotify oven airplay (shairtunes2)

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •