How do I troubleshoot Baloo?

I added an album to my collection and noticed that Elisa only recognised some of the songs. When I changed indexer to scanning the file system directly all of the tracks were indexed just fine. When I changed back to using Baloo the same files disappeared from my collection.

Then I went into the music folder and ran balooctl index "08 Watery Graves (slow).flac", refreshed Elisa’s database, and saw the file appear in Elisa. Running balooctl check does not find the files, so I can only assume this is a bug in Baloo. balooctl failed simply outputs All Files were indexed successfully. Is there any way for me to figure out why Baloo is choosing to not index these files?

I suggest you use balooctl to disable, purge, and enable to get a fresh index. Then, look at the “folder specific configuration” to add directories that aren’t under your home directory.

And then, balooctl --help will tell you what you can do.

I found that balooshow -x <file> exists. When I run this for files that are shown in Elisa I get the line Property Terms: Maudio Mflac T2 whereas the files that aren’t showing in Elisa have the line Property Terms: Mapplication Moctet Mstream.

I’ll try purging and re-indexing to see if that fixes the issue (wanted to keep this as a last resort in case it takes ages to scan everything)

Yep purging it fixed the issue. I was hoping to figure out why baloo didn’t scan the files properly the first time around, but oh well. My only guess is that it scanned them as they were being unzipped from an archive and didn’t look like music files at the time :man_shrugging:

I claim baloo is broken by design because users aren’t allowed to see into the index, or have details of what it is doing. It fails in so many ways, sort of understandable given the open-ended variety of file formats it handles, but by design users can’t work out what is wrong and so give good reports of failures. Some years ago baloo tried to kill my desktop by exceeding the TBW of the SSD; if I hadn’t noticed it would only have taken a couple of weeks to exceed the TBW. Now, I don’t let it run.

I read something similar in another post (I don’t remember if it was you or someone else) but baloo does have some debugging tools, one offered right here by th OP.

There’s:

balooctl status
balooctl check
balooctl index
balooctl clear
balooctl monitor
balooctl indexSize
balooctl failed
balooshow -x [file|id|inode...]

Edit: meant to add: I know it’s not perfect but it’s also not a blackbox as you seemed to imply.

If it happens again you coud try balooctl clear </path/to/file> and balooctl index </path/to/file> before purging everything.

I’m not sure, but I think that when I last tried to make baloo work (my notes suggest 2020) there were not so many balooctl commands, and there was no balooshow. After I found it stuck in a loop writing continuously I haven’t let it run since.