Open sashkello opened 9 years ago
I've been experiencing this issue frequently as well when I am rating songs. I built from source (1.2.3-1475-g26d82c2) and I'm running on both FC20 and Linux Mint 17.3.
I debugged this a little and I believe the problem is a race condition where sometimes a MessageReply is deleted before it calls semaphore_.release(). When this happens the behavior is undefined. It looks like maybe futex calls are made on invalid instances inside Qt and this just hangs forever. It often seg faults when I run with a debug build. The reason this happens is:
Just as a test I moved the "emit Finished()" after the semaphore_.release() in both MessageReply
Thanks for that! I have compiled the latest build from source with the changes you suggested, and it works fine for now (2 days of several hours listening). Haven't noticed any issues.
Did either of you ( @johnsockr or @sashkello ) experience the problems described in #3064 ?
It seems like this could be the fix for the long term issues faced there.
The symptoms described in #3064 sound similar to what I was experiencing. It certainly could be the same problem. I ended up fixing it in my fork a little differently than I described earlier. See https://github.com/johnsockr/Clementine/commit/fcb11c30959e71fb983c02c3738e070453423e69. I haven't had any hangs since I applied that patch.
I found a fix for this after googling for a while and not finding this suggestion. My suspicion was that Clementine was choking on some file it couldn't access or do something important with. I tried disabling "update library" etc. This is on Ubuntu 14.04 x64 with Clementine 1.3.1. Here's the fix that worked for me:
This got it working for me, hopefully it works for you!
I've got Clementine 1.2.3-1213-g7bac8cb installed at the moment, however this issue was present in both stable and other builds I had through time.
Basically, at some seemingly random moments Clementine seem to stop receiving any response from the library. The ratings I set are not saved, if I right-click "Edit track information", it shows the frame which loads forever. Full library rescan gets stuck on one same number as well.
To see what's going on I have launched it from terminal and here's what it prints right before this happens:
12:40:06.457 DEBUG TagReader:794 Saving song rating tags to "/media/sasha/mydisc/Music/Despraorehn.mp3" 12:40:06.458 DEBUG TagReader:862 Setting FMPSFrame: "FMPS_Rating" , "0.5" 12:40:06.765 DEBUG MessageReply:90 Releasing ID 8 (finished)
12:40:06.765 WARN unknown QWaitCondition::wakeAll(): mutex lock failure: Invalid argument