high CPU load when cover art is not found

Bug #1879160 reported by ronso0
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
High
Unassigned

Bug Description

Warning [Thread (pooled)]: CoverArt - loadImage 2 cover does not exist: "/mnt/audio/in/album-artist.jpg"

I get the log spammed with many thousand messages like that, and usually it's one cover image that Mixxx complains about, but not always the same.
After a while this blocks the CPU that much that I got massive xruns and had to restart Mixxx to get it usable again.

There are no other irregularities in the log.

Ubuntu Studio 20.04
compiled master with cmake

Debug [Main]: "Mixxx" "2.4.0-alpha-pre" "(git HEAD r7377; built on: May 16 2020 @ 17:13:30)" is starting...
Debug [Main]: Compile time library versions:
Debug [Main]: Qt: 5.12.8
Debug [Main]: libshout: 2.4.1
Debug [Main]: PortAudio: 1246720 PortAudio V19.6.0-devel, revision 396fe4b6699ae929d3a685b3ef8a7e97396139a4
Debug [Main]: RubberBand: 1.8.2
Debug [Main]: SoundTouch: 2.1.1
Debug [Main]: TagLib: 1.11.1
Debug [Main]: ChromaPrint: 1.4.3
Debug [Main]: Vorbis: Xiph.Org libVorbis 1.3.6
Debug [Main]: libsndfile: libsndfile-1.0.28
Debug [Main]: FLAC: 1.3.3
Debug [Main]: libmp3lame: 3.100

Tags: performance
ronso0 (ronso0)
description: updated
Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :

The only option I see right now is to suppress all these logs.

The affected code is stateless. Printing the warning only once each session would require extensions including thread synchronization due to multi-threaded look up.

Revision history for this message
Kristiyan Katsarov (katsar0v) wrote :

I am not sure if it from the song cover, but my cpu goes also 100%...

 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
 3796 katsarov 20 0 6855228 525612 156800 S 101,7 3,3 6:30.53 mixxx

Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :
Changed in mixxx:
status: New → Confirmed
ronso0 (ronso0)
Changed in mixxx:
importance: Undecided → High
Revision history for this message
ronso0 (ronso0) wrote :

Setting to High as it was a show stopper.

@ukloutzde Do you think it's just the debug messages that causes the CPU load?

What would help me is to print the filename of the track(s) that miss the cover file so I can solve the issue by removing the cover manually from all affected tracks.

What are the scenarios that cause a missing cover?
a) cover image is in a non-existant location (removed or unmounted)
b) cover image was removed manually, either from track file or deleted in filesystem
c) ?

For a) it makes sense to keep the cover assigned to the tracks, though how likely is it to have tracks and cover images in entirely different locations?
For b) we can remove the cover from the database and the user can assign a new image.

Revision history for this message
ronso0 (ronso0) wrote :
Revision history for this message
ronso0 (ronso0) wrote :

Just a quick fix, disables infinite logging

Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :
Changed in mixxx:
status: Confirmed → Fix Committed
Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :
Changed in mixxx:
status: Fix Committed → In Progress
Changed in mixxx:
status: In Progress → Fix Committed
Changed in mixxx:
status: Fix Committed → Fix Released
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/9974

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.