Sources Update / Rescan fails after a few hundred tracks

that’s weird, mpd 0.23.5-1 should be already in place on v3.611

what is the response to the following command?

mpd --version

Just to give you a faster response, for me initially indeed 0.23.5-1.
However, the debug package somehow starts saying that 0.21.18 is installed

Even now I’ve got

volumio@volumiio:~$ mpd --version
Music Player Daemon 0.23.15 (0.23.15)
Copyright 2003-2007 Warren Dukes <warren.dukes@gmail.com>
Copyright 2008-2021 Max Kellermann <max.kellermann@gmail.com>
This is free software; see the source for copying conditions.  There is NO
warranty; not even MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Bug installed the debug package provided throws the same error.

I presume it’s due to 0.21.18 being the latest available on apt:

apt list -a mpd
Listing... Done
mpd/now 0.21.18 armhf [installed,local]
mpd/oldoldstable 0.21.5-3 armhf

upd
While I was on the way to debug my issue, I apparently fix it.

So as soon as I not only compiled and installed the newest version 0.23.15 but also updated MPD.service and systemctl to the new location (it uses usr/local/bin instead of usr/bin as the included one), it just worked.
It scanned through the whole media storage connected via USB for the first time ever.
And didn’t throw a single error to test the debug.

My assumption (and I’m not an expert by any mean) is the following:

  1. Volumio may ship with v 0.23.5-1
  2. The latest available via apt is 0.21.X
  3. When “pro” users update packages somehow, a downgrade occurs
    The old version has got some issues with scanning catalogs of certain types.

But it’s subjective.

Build from this instructions does not have Volumio specific parameters, discards upstream pipe rework and fails socket init, brings dependency on non-ported newer libraries and dependencies. I trust you took appropriate steps.
Every reset or upgrade will discard custom packages and will revert to the Volumio shipped.
The mpd-0.23.15 is being evaluated for production use across all Volumio ports, no ETA as yet.

The most honest answer will be no. And I appreciate that you are raising it.
As the original goal was to debug MPD’s scan function and see why it fails, I had to take the risk of it being incompatible with the Volumio.

Yet, it does to work for the time being for me. Not just in terms of scanning but in terms of playback too.
Maybe it’s due to the fact I use Volumio’s mpd.config file, maybe it’s a blind luck.

I do indeed acknowledge that it will most certainly not support further Volumio updates.

However, I’m not sure at the moment that I’d instead build an older debug package to continue the investigation. Maybe unless I’m asked to.

Can you verify this by doing a factory reset and see if you still have this error?
Thanks a lot

After having internal discussion please download testing packages for:

mpc - https://github.com/foonerd/volumio3-mpc/tree/main/packages/static
liburing1/mpd - https://github.com/foonerd/volumio3-mpd/tree/main/packages/static

The liburing1 is prerequisite for newer mpd versions.

Just a quick update from running in alsadbug mode:

If i remove all " update " lines about the filenames which were scanned, the last lines in the log look like this in my case.

As it seems the scan has completed and at the end the DB is written as last step. However, the volumio web interface reports still the rotating scan animation in the upper left corner, and i cannot browse the library at all. Also the library statistics are not showing in the sources menu.

If i run “killall node” and let volumio reload, the statistics are showing up.

Next i will try to add the custom mpd packages.

-bash-5.0# tail -2000 mpd.log | grep -v " : update: " | tail -40
Feb 04 22:50 : mad: LAME peak found: 0
Feb 04 22:50 : mad: encoder delay is 576, encoder padding is 864
Feb 04 22:50 : mad: detected LAME version 3.99 ("LAME3.99r")
Feb 04 22:50 : mad: LAME peak found: 0
Feb 04 22:50 : mad: encoder delay is 576, encoder padding is 576
Feb 04 22:50 : simple_db: removing empty directories from DB
Feb 04 22:50 : simple_db: sorting DB
Feb 04 22:50 : simple_db: writing DB
Feb 04 22:50 : client: [2] process command "count "group" "artist""
Feb 04 22:50 : client: [2] command returned 0
Feb 04 22:50 : client: [2] process command "idle"
Feb 04 22:50 : client: [2] command returned 1
Feb 04 22:50 : client: [2] process command "search album """
Feb 04 22:50 : client: [2] command returned 0
Feb 04 22:50 : client: [2] process command "idle"
Feb 04 22:50 : client: [2] command returned 1
Feb 04 22:50 : client: [2] process command "status"
Feb 04 22:50 : client: [2] command returned 0
Feb 04 22:50 : client: [2] process command "idle"
Feb 04 22:50 : client: [2] command returned 1
Feb 04 22:50 : client: [2] process command "status"
Feb 04 22:50 : client: [2] command returned 0
Feb 04 22:50 : client: [2] process command "idle"
Feb 04 22:50 : client: [2] command returned 1
Feb 04 22:50 : client: [2] process command "status"
Feb 04 22:50 : client: [2] command returned 0
Feb 04 22:50 : client: [2] process command "idle"
Feb 04 22:50 : client: [2] command returned 1
Feb 04 22:50 : client: [2] process command "count "group" "artist""
Feb 04 22:50 : client: [2] command returned 0
Feb 04 22:50 : client: [2] process command "idle"
Feb 04 22:50 : client: [2] command returned 1
Feb 04 22:50 : client: [2] process command "search album """
Feb 04 22:50 : client: error on client 2: Output buffer is full
Feb 04 22:50 : client: [2] command returned 0
Feb 04 22:50 : client: [2] closed
Feb 04 22:50 : client: [1] process command "idle"
Feb 04 22:50 : client: [1] command returned 1
Feb 04 22:50 : client: [0] process command "idle"
Feb 04 22:50 : client: [0] command returned 1

Update: Package installation does not succeed on my rpi4.

wget https://github.com/foonerd/volumio3-mpc/blob/main/packages/static/mpc_0.34-2_armhf.deb
wget https://github.com/foonerd/volumio3-mpd/blob/main/packages/static/liburing1_0.7-3~bpo10%2B1_armhf.deb
wget https://github.com/foonerd/volumio3-mpd/blob/main/packages/static/mpd_0.23.14-3_armhf.deb
wget https://github.com/foonerd/volumio3-mpd/blob/main/packages/static/mpd_0.23.15-1_armhf.deb


-bash-5.0# dpkg -i liburing1_0.7-3~bpo10\+1_armhf.deb mpc_0.34-2_armhf.deb mpd_0.23.15-1_armhf.deb
dpkg-deb: error: 'liburing1_0.7-3~bpo10+1_armhf.deb' is not a Debian format archive
dpkg: error processing archive liburing1_0.7-3~bpo10+1_armhf.deb (--install):
 dpkg-deb --control subprocess returned error exit status 2
dpkg-deb: error: 'mpc_0.34-2_armhf.deb' is not a Debian format archive
dpkg: error processing archive mpc_0.34-2_armhf.deb (--install):
 dpkg-deb --control subprocess returned error exit status 2
dpkg-deb: error: 'mpd_0.23.15-1_armhf.deb' is not a Debian format archive
dpkg: error processing archive mpd_0.23.15-1_armhf.deb (--install):
 dpkg-deb --control subprocess returned error exit status 2
Errors were encountered while processing:
 liburing1_0.7-3~bpo10+1_armhf.deb
 mpc_0.34-2_armhf.deb
 mpd_0.23.15-1_armhf.deb

mpc and mpd package went trhough just fine for me. I’ll be running rescans to see how it goes with them.

However, the liburing1 seems to be missing something. Could you give me an advice on that?

volumio@volumiio:~/mpd_new$ sudo dpkg -i liburing1_0.7-3~bpo10+1_armhf.deb
(Reading database ... 147470 files and directories currently installed.)
Preparing to unpack liburing1_0.7-3~bpo10+1_armhf.deb ...
Unpacking liburing1:armhf (0.7-3~bpo10+1) over (0.7-3~bpo10+1) ...
Setting up liburing1:armhf (0.7-3~bpo10+1) ...
Processing triggers for libc-bin (2.28-10+rpt2+rpi1+deb10u2) ...
ldconfig: /lib/arm-linux-gnueabihf/libnss_mdns6.so.2 is not a symbolic link

ldconfig: /lib/arm-linux-gnueabihf/libnss_mdns4_minimal.so.2 is not a symbolic link

ldconfig: /lib/arm-linux-gnueabihf/libnss_mdns4.so.2 is not a symbolic link
1 Like

I think that you have downloaded HEAD of github static assets and they all are the exact same size. Can you confirm?

The debs should be downloaded as “raw” source where the resulting url for wget will change like this:
…/volumio3-mpc/blob/main/packages/static/mpc_0.34-2_armhf.deb
…/volumio3-mpc/raw/main/packages/static/mpc_0.34-2_armhf.deb

I don’t think you will need mpd_0.23.14-3_armhf.deb, only mpd_0.23.15-1_armhf.deb.

As such, links will become:
wget https://github.com/foonerd/volumio3-mpc/raw/main/packages/static/mpc_0.34-2_armhf.deb
wget https://github.com/foonerd/volumio3-mpd/raw/main/packages/static/liburing1_0.7-3~bpo10%2B1_armhf.deb
wget https://github.com/foonerd/volumio3-mpd/raw/main/packages/static/mpd_0.23.15-1_armhf.deb

Once downland, please check sizes of the debs, they should not be identical.

What do you see when running

ls -la /lib/arm-linux-gnueabihf/libnss_md*

Screenshot from mine:

Different order and a different day. But it’s very much similar otherwise. Permission map is the same.

volumio@volumiio:~/mpd_new$ ls -la /lib/arm-linux-gnueabihf/libnss_md*
-rw-r--r-- 1 root root  9532 Apr 26  2018 /lib/arm-linux-gnueabihf/libnss_mdns4_minimal.so.2
-rw-r--r-- 1 root root  9532 Apr 26  2018 /lib/arm-linux-gnueabihf/libnss_mdns4.so.2
-rw-r--r-- 1 root root  9532 Apr 26  2018 /lib/arm-linux-gnueabihf/libnss_mdns6_minimal.so.2
-rw-r--r-- 1 root root  9532 Apr 26  2018 /lib/arm-linux-gnueabihf/libnss_mdns6.so.2
-rw-r--r-- 1 root root 13628 Apr 26  2018 /lib/arm-linux-gnueabihf/libnss_mdns_minimal.so.2
-rw-r--r-- 1 root root 13628 Apr 26  2018 /lib/arm-linux-gnueabihf/libnss_mdns.so.2

This usually indicates that there is another library in the ldconfig cache either with the same name and different version or some additional paths are in use.
Based on the size of your database (Reading database ... 147470 files and directories currently installed.) this is quite (for a player) large.

Let’s try something:

Duplicate paths and references: cat /etc/ld.so.conf.d/*

Duplicate libraries with the same name: sudo ldconfig -v | grep libnss

Yes, it grew substantially since I installed everything required to complie the MPD earlier.

Thank you for the further assistance here.
I ran the suggested checks on 2 Volumios: one I touched and one on the original firmware, untouched.
The outputs look identical to me.
And I feel it exposes an issue, yet, I’m not entirely sure how to address it.
I guess it has something to do with the directories used on the previous versions of Raspberry vs the current release?

The outputs of the checks:

volumio@volumiio:/$ cat /etc/ld.so.conf.d/*
/opt/vc/lib
# Multiarch support
/usr/local/lib/arm-linux-gnueabihf
/lib/arm-linux-gnueabihf
/usr/lib/arm-linux-gnueabihf
/usr/lib/arm-linux-gnueabihf/libfakeroot
# libc default configuration
/usr/local/lib
volumio@volumiio:~$ sudo ldconfig -v | grep libnss
ldconfig: Path `/lib/arm-linux-gnueabihf' given more than once
ldconfig: Path `/usr/lib/arm-linux-gnueabihf' given more than once
ldconfig: /lib/arm-linux-gnueabihf/libnss_mdns6.so.2 is not a symbolic link
	libnss_nisplus.so.2 -> libnss_nisplus-2.28.so
	libnss_nis.so.2 -> libnss_nis-2.28.so
	libnss_mdns_minimal.so.2 -> libnss_mdns_minimal.so.2

ldconfig: 	libnss_mdns6.so.2 -> libnss_mdns6_minimal.so.2
/lib/arm-linux-gnueabihf/libnss_mdns4_minimal.so.2 is not a symbolic link

ldconfig: /lib/arm-linux-gnueabihf/libnss_mdns4.so.2 is not a symbolic link

	libnss_mdns4_minimal.so.2 -> libnss_mdns6.so.2
ldconfig: /lib/arm-linux-gnueabihf/ld-2.28.so is the dynamic linker, ignoring

	libnss_mdns4.so.2 -> libnss_mdns4_minimal.so.2
	libnss_mdns.so.2 -> libnss_mdns.so.2
	libnss_hesiod.so.2 -> libnss_hesiod-2.28.so
	libnss_files.so.2 -> libnss_files-2.28.so
	libnss_dns.so.2 -> libnss_dns-2.28.so
	libnss_compat.so.2 -> libnss_compat-2.28.so
	libnssutil3.so -> libnssutil3.so
	libnss3.so -> libnss3.so

I went ahead and removed libnss_mdns6.so.2 and libnss_mdns4.so.2.
Then ran liburing again, no warnings this time:

sudo dpkg -i liburing1_0.7-3~bpo10+1_armhf.deb
(Reading database ... 147470 files and directories currently installed.)
Preparing to unpack liburing1_0.7-3~bpo10+1_armhf.deb ...
Unpacking liburing1:armhf (0.7-3~bpo10+1) over (0.7-3~bpo10+1) ...
Setting up liburing1:armhf (0.7-3~bpo10+1) ...
Processing triggers for libc-bin (2.28-10+rpt2+rpi1+deb10u2) ...

What left me with this output:

volumio@volumiio:~/mpd_new$ sudo ldconfig -v | grep libnss
ldconfig: Path `/lib/arm-linux-gnueabihf' given more than once
ldconfig: Path `/usr/lib/arm-linux-gnueabihf' given more than once
	libnss_nisplus.so.2 -> libnss_nisplus-2.28.so
	libnss_nis.so.2 -> libnss_nis-2.28.so
	libnss_mdns_minimal.so.2 -> libnss_mdns_minimal.so.2
	libnss_mdns6.so.2 -> libnss_mdns6_minimal.so.2
	libnss_mdns4.so.2 -> libnss_mdns4_minimal.so.2
	libnss_mdns.so.2 -> libnss_mdns.so.2
	libnss_hesiod.so.2 -> libnss_hesiod-2.28.so
	libnss_files.so.2 -> libnss_files-2.28.so
	libnss_dns.so.2 -> libnss_dns-2.28.so
	libnss_compat.so.2 -> libnss_compat-2.28.so
ldconfig: /lib/arm-linux-gnueabihf/ld-2.28.so is the dynamic linker, ignoring

	libnssutil3.so -> libnssutil3.so
	libnss3.so -> libnss3.so

I’m wondering, is it acceptable or I’ve still got something to fix further?

In one of the location references inside of the /etc/ld.so.conf.d/
This is suspicious and I wonder where it came from. Is it still present?
The package: libnss-mdns is a plugin for the Name Service Switch (NSS) providing host name via multicast DNS resolution for programs in the ad-hoc mDNS domain .local. If you can find your Volumio device using .local you probably will be fine.
Newest MPD with dependencies are heading towards future Volumio releases and an upgrade will bring it in anyway.

1 Like

Yes, it’s still there.

But I assume that the conclusion for now is that the newest version of MPR should in theory solve the issue with the library rescan for all users affected and reported in this thread?

I think it would be nice if someone else gave it a try.

Overall, highly appreciate your involvement and proactive support.
Thanks much!

we’re going to create some beta test builds with the new MPD, it will be easier for people to test and verify if the issues is solved in this way

1 Like

Hello all

I have had the same issue. After new installation of volumio on pi 5, scanning music library from NAS, mpd was crashing when reaching around 5000 tracks.
No such issue on pi 4b been on the same network.
After installing 3.629 alpha release today, which uses more recent release of mpd, scanning was completed with 43k tracks….

1 Like

thanks for reporting that the problem is solved!

Updated to 3.629 alpha release and rescanned - all working - finds 3900 albums, 43K tracks.

1 Like