Conversation
👍
This is something I noticed too. At some point I did try to figure out why some albums were missing, respectively why At the end of the day, If you would like to see an example of
Yes, that's also my feeling. But I couldn't figure out why, yet. I don't think it's because of
I tried your branch and you are right: albums which are missing on the But maybe that's the price to pay if you don't want albums missing.
Sure, there two things:
And again, thanks for your work! |
e53a92b to
c48c605
Compare
replaces part of the former algorithm to query albums, relying on a stream of "listAllAlbums()", to a stream pipeline of "listAllAlbumsNames()" to "findAlbums(name)" additionally, when loading album art files, include their full path in the trace logs
c48c605 to
d7392bd
Compare
|
Sorry for the delay @rain0r, I squashed the changes, removed that call to .peek(), rewrote the commit message to make it more clear. |
|
Actually you know what, I think I understand the problem from javampd's part. The albums that were missing do have something in common: each one of them exist next to another album in the same albumartist/genre/date/artist group (such is the MPD protocol command that the method queries by). In other words, for every album that exists within one group of an albumartist/genre/date/artist, there may be X albums within the same group, and those will go missing.
I'm going to try creating a patch there and see how that goes, perhaps this PR won't be needed, but if it is, I will reopen it. |
|
Hey there, thanks for your effort. I would merge your PR happily, since I'm not sure how active the development of If your PR to But in the meantime, it would be nice to have all albums in the albums-view. |
|
@rainor I managed, here it is if you wanna take a look as well finnyb/javampd#258 |
Hi, I was running and reviewing ampd in an attempt to fully understand its inner workings.
I noticed some albums would be missing from the webclient when I tried finding them in the "Albums" tab once the album cache had been filled. I did not go into great efforts to validate the exact "problematic" albums (as these seemed to be random), but I did put some logs on the method where it caches them, and found that these albums were skipped for allegedly missing artist tags as read from javampd abstractions.
I took a look at my local files and checked other MPD clients (namely ncmpcpp and cantata) and they all seemed to recognize those missing albums and their artist tags just fine.
So I figured there might be an issue in how javampd is loading them.
And as I navigated through the docs, I found they do slightly warn that under very large collections, the listAllAlbums() method, the one used in ampd, may at least be slow.
I also browsed the mpd docs for a bit and found another interesting bit; the unix socket that javampd reads from, sends data in an unstructured way, that is, a straight list of "key:value" tag pairs. From the way javampd queries the data for "all albums", it'd be easy to mistake which piece of information belongs on which individual album. My guess remains, that javampd might be the one at fault when this specific querying method is used.
But at least I did manage to fix the issue in my machine with the commits provided in this PR: no longer do I have missing albums when I look them up within the ampd webclient.
For the sake of context: all my collection is stored in, plus I'm compiling and running all this software on top of; a single Linux 6.8-based desktop machine with mpd v0.24.6. No Docker, no computer interconnectivity, just the most straightforward deployment to localhost for now.
Please let me know if I can do anything to improve this PR.
PS. I'm done editing this comment, sorry for that lool.