[solved] recent mythmusic commits - high CPU load on FE

User avatar
warpme
Translator
Posts: 79
Joined: Fri Feb 07, 2014 9:13 pm
Poland

[solved] recent mythmusic commits - high CPU load on FE

Post by warpme »

Paul,
Lastly I give check how myth music goes on current master and I found problem with high CPU load on FE.
On my ION1 fe CPU load practically throttle UI (reaction on remote key-press is 10-20sec).
BE/FE log is below.
I'm pretty sure issue was introduced by last set of myth music commits (around Sunday)
Test were on combined BE/FE with current master.
If You need any add.info - I'm ready to collect it.
br
Attachments
logs.zip
(14.83 KiB) Downloaded 96 times
User avatar
paulh
Developer
Posts: 909
Joined: Thu Feb 06, 2014 6:09 pm
Great Britain

Re: recent mythmusic commits - high CPU load on FE

Post by paulh »

I can't think of any recent changes that would affect CPU usage.

From your fe log it looks like you started a file scan shortly before you started myth music which will run in the background. If I recall correctly you have a lot of music files so the scan will take some time. The fe log doesn't show when the scan finished so I assume it was still running while you was using the fe. This together with the fact the ion is very slow and this is a combined fe/be could account for the slow response of the fe? It was probably waiting for the BE to respond to commands sent over the myth protocol.
User avatar
warpme
Translator
Posts: 79
Joined: Fri Feb 07, 2014 9:13 pm
Poland

Re: recent mythmusic commits - high CPU load on FE

Post by warpme »

Paul,
Indeed I clear DB and launch scan for making sure that we have defined/current DB state.
I'm 95% sure scan was finished when I started playback.
Tests were on test machine where I put master and copy 1.6k files music.
Today evening I'll bisect to find commit causing issue so I hope this will give us some light what going on....
br
User avatar
warpme
Translator
Posts: 79
Joined: Fri Feb 07, 2014 9:13 pm
Poland

Re: recent mythmusic commits - high CPU load on FE

Post by warpme »

Paul,
I think issue might be related to BE reaction for mythutil image extraction error ret code in case of errors in mp3 file or something like this.

On BE log I see hell of messages like this:

Code: Select all

2014-03-20 19:13:13.199536 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.217288 I  MainServer::ANN Monitor
2014-03-20 19:13:13.217311 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.218096 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.243972 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.261640 I  MainServer::ANN Monitor
2014-03-20 19:13:13.261650 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.275373 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.290844 I  MainServer::ANN Monitor
2014-03-20 19:13:13.290890 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.301251 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.303625 I  MainServer::ANN Monitor
2014-03-20 19:13:13.303692 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.310175 I  MainServer::ANN Monitor
2014-03-20 19:13:13.310204 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.316161 I  MainServer::ANN Monitor
2014-03-20 19:13:13.316177 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.316778 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.326234 I  MainServer::ANN Monitor
2014-03-20 19:13:13.326248 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.345393 I  MainServer::ANN Monitor
2014-03-20 19:13:13.345404 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.347555 I  MainServer::ANN Monitor
2014-03-20 19:13:13.347564 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.366395 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.369602 I  MainServer::ANN Monitor
2014-03-20 19:13:13.369619 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.377219 I  MainServer::ANN Monitor
2014-03-20 19:13:13.377229 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.398438 I  MainServer::ANN Monitor
2014-03-20 19:13:13.398450 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.402757 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.405954 I  MainServer::ANN Monitor
2014-03-20 19:13:13.405977 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.418327 I  MainServer::ANN Monitor
2014-03-20 19:13:13.418341 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.427278 I  MainServer::ANN Monitor
2014-03-20 19:13:13.427295 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.446668 I  MainServer::ANN Monitor
2014-03-20 19:13:13.446677 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.447321 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.456083 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.461332 I  MainServer::ANN Monitor
2014-03-20 19:13:13.461343 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.468617 I  MainServer::ANN Monitor
2014-03-20 19:13:13.468631 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.470838 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.480131 I  MainServer::ANN Monitor
2014-03-20 19:13:13.480145 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.496002 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.506307 I  MainServer::ANN Monitor
2014-03-20 19:13:13.506337 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.522090 I  MainServer::ANN Monitor
2014-03-20 19:13:13.522101 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.539009 I  MainServer::ANN Monitor
2014-03-20 19:13:13.539020 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.551284 I  MainServer::ANN Monitor
2014-03-20 19:13:13.551299 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.563482 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.578942 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.595591 I  MainServer::ANN Monitor
2014-03-20 19:13:13.595611 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.609478 I  MainServer::ANN Monitor
2014-03-20 19:13:13.609488 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.612120 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.620001 I  MainServer::ANN Monitor
2014-03-20 19:13:13.622535 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.624738 I  MainServer::ANN Monitor
2014-03-20 19:13:13.624752 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.628270 I  MainServer::ANN Monitor
2014-03-20 19:13:13.628796 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.628862 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.649653 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.659856 I  MainServer::ANN Monitor
2014-03-20 19:13:13.660085 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.665025 I  MainServer::ANN Monitor
2014-03-20 19:13:13.665043 I  adding: mythtv as a client (events: 0)
2014-03-20 19:13:13.675715 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.697565 I  MainServer::ANN Monitor
2014-03-20 19:13:13.697580 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.701257 I  MainServer::ANN Monitor
2014-03-20 19:13:13.701268 I  adding: mythtv as a client (events: 1)
2014-03-20 19:13:13.718254 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
2014-03-20 19:13:13.761284 I  HandleMusicTagGetImage: running mythutil --extractimage --songid='27' --imagetype='Front' on master BE 'mythtv'
Launching

Code: Select all

mythutil --verbose all --extractimage --songid='27' --imagetype='1'
gives

Code: Select all

2014-03-20 19:17:01.995284 I  RemoteFile::FindFile(): looking for 'Metal/ACDC/1975 - High Voltage (Australia Only)/02 - She's Got Balls.mp3' on 'mythtv' in group 'Music'
2014-03-20 19:17:01.996569 I  MythCoreContext: Connecting to backend server: 192.168.1.221:6543 (try 1 of 1)
2014-03-20 19:17:01.996608 I  MythSocket(12e30a0:-1): MythSocket(-1, 0x0) ctor
2014-03-20 19:17:01.996982 I  MythSocket(12e30a0:-1): IP is local, using loopback address instead
2014-03-20 19:17:01.996993 I  MythSocket(12e30a0:-1): attempting connect() to (127.0.0.1:6543)
2014-03-20 19:17:01.997183 I  MythSocket(12e30a0:14): Connected to (127.0.0.1:6543)
2014-03-20 19:17:01.997339 I  MythSocket(12e30a0:14): write -> 14 30      MYTH_PROTO_VERSION 77 WindMark
2014-03-20 19:17:01.997689 I  MythSocket(12e30a0:14): read  <- 14 13      ACCEPT[]:[]77
2014-03-20 19:17:01.997709 I  Using protocol version 77
2014-03-20 19:17:01.997731 I  MythSocket(12e30a0:14): write -> 14 20      ANN Monitor mythtv 0
2014-03-20 19:17:01.997917 I  MythSocket(12e30a0:14): read  <- 14 2       OK
2014-03-20 19:17:01.997951 I  MythSocket(12e6970:-1): MythSocket(-1, 0x12ac938) ctor
2014-03-20 19:17:01.998053 I  MythSocket(12e6970:-1): IP is local, using loopback address instead
2014-03-20 19:17:01.998061 I  MythSocket(12e6970:-1): attempting connect() to (127.0.0.1:6543)
2014-03-20 19:17:01.998148 I  MythSocket(12e6970:16): Connected to (127.0.0.1:6543)
2014-03-20 19:17:01.998249 I  MythSocket(12e6970:16): write -> 16 20      ANN Monitor mythtv 1
2014-03-20 19:17:01.998485 I  MythSocket(12e6970:16): read  <- 16 2       OK
2014-03-20 19:17:01.998544 I  MythSocket(12e30a0:14): write -> 14 116     QUERY_SG_FILEQUERY[]:[]mythtv[]:[]Music[]:[]Metal/ACDC/1975 - Hig...
2014-03-20 19:17:01.999231 I  MythSocket(12e30a0:14): read  <- 14 111     /myth/music/Metal/ACDC/1975 - High Voltage (Australia Only)/02 - ...
2014-03-20 19:17:01.999397 I  MythSocket(12e30a0:14): write -> 14 14      QUERY_HOSTNAME
2014-03-20 19:17:01.999558 I  MythSocket(12e30a0:14): read  <- 14 6       mythtv
2014-03-20 19:17:01.999590 I  RemoteFile::Exists(): looking for remote file: myth://MusicArt@mythtv/Icons/artist/acdc.jpg
2014-03-20 19:17:01.999631 I  MythSocket(12e30a0:14): write -> 14 56      QUERY_FILE_EXISTS[]:[]Icons/artist/acdc.jpg[]:[]MusicArt
2014-03-20 19:17:02.000448 I  MythSocket(12e30a0:14): read  <- 14 1       0
2014-03-20 19:17:02.000472 I  RemoteFile::Exists(): looking for remote file: myth://MusicArt@mythtv/Icons/artist/acdc.jpeg
2014-03-20 19:17:02.000507 I  MythSocket(12e30a0:14): write -> 14 57      QUERY_FILE_EXISTS[]:[]Icons/artist/acdc.jpeg[]:[]MusicArt
2014-03-20 19:17:02.001268 I  MythSocket(12e30a0:14): read  <- 14 1       0
2014-03-20 19:17:02.001292 I  RemoteFile::Exists(): looking for remote file: myth://MusicArt@mythtv/Icons/artist/acdc.png
2014-03-20 19:17:02.001329 I  MythSocket(12e30a0:14): write -> 14 56      QUERY_FILE_EXISTS[]:[]Icons/artist/acdc.png[]:[]MusicArt
2014-03-20 19:17:02.002065 I  MythSocket(12e30a0:14): read  <- 14 1       0
2014-03-20 19:17:02.002089 I  RemoteFile::Exists(): looking for remote file: myth://MusicArt@mythtv/Icons/artist/acdc.gif
2014-03-20 19:17:02.002122 I  MythSocket(12e30a0:14): write -> 14 56      QUERY_FILE_EXISTS[]:[]Icons/artist/acdc.gif[]:[]MusicArt
2014-03-20 19:17:02.002854 I  MythSocket(12e30a0:14): read  <- 14 1       0
2014-03-20 19:17:02.002882 I  findicon: not found for type: artist, name: acdc
2014-03-20 19:17:02.002916 E  Cannot find image of type: 0
2014-03-20 19:17:02.086611 I  New Client:  (#1)
So maybe high CPU usage is because:
-BE goes into undesired loop triggered by mythutil NOK ret code
-this loop causes FE v.slow UI because BE being in loop is unresponsive for FE requests?
User avatar
paulh
Developer
Posts: 909
Joined: Thu Feb 06, 2014 6:09 pm
Great Britain

Re: recent mythmusic commits - high CPU load on FE

Post by paulh »

There's something really screwed up with your set up. You say you are using current master but the log snippet shows you are actually using 77 WindMark which is 0.27-fixes if I'm not mistaken.

There is also a mismatch between FE and BE versions because one part of the log shows --imagetype='Front' which is from an older version and one shows --imagetype='1' which is the current version.

I really want to help you but you make it really difficult because you insist on screwing around so much with your installation it difficult to know what is a real bug and what is caused by your setup :(
User avatar
warpme
Translator
Posts: 79
Joined: Fri Feb 07, 2014 9:13 pm
Poland

Re: recent mythmusic commits - high CPU load on FE

Post by warpme »

Argh.
I used wrong git to catch logs. Sorry for that!
Pls find logs for BE/FE from current (today's) master.
I had to kill FE as after starting myth music on FE UI becomes completely unresponsive.
br

EDIT: Forum don't allows to attach files bigger that 256k. My logs have 270k :-(
Pls download logs from http://warped.homenet.org/logs.zip
User avatar
paulh
Developer
Posts: 909
Joined: Thu Feb 06, 2014 6:09 pm
Great Britain

Re: recent mythmusic commits - high CPU load on FE

Post by paulh »

The logs are password protected.

It would be more useful to run htop and select the option to see the process tree then run the FE under gdb. When you see the high cpu usage make a note of the PIDs of the FE processes in htop that are using a lot of cpu. Switch to gdb and press Ctrl-C to interrupt the FE. Then get the full BT with thread apply all bt full. From that we should be able to match the PID of the threads taking a lot of cpu in htop with the threads from the BT and then match that up to the code that is causing the high cpu usage.

You may have to repeat the above to get a good bt depending on where the code is interrupted it may not be obvious where in the code the thread has stopped so just repeat the process until you get a good bt. Also if it helps with your tiny ion system you can run the FE as normal and then when you see the high cpu usage attach gdb to it with gdb --pid <PID_OF_FE>
User avatar
warpme
Translator
Posts: 79
Joined: Fri Feb 07, 2014 9:13 pm
Poland

Re: recent mythmusic commits - high CPU load on FE

Post by warpme »

paulh wrote:The logs are password protected.
heh - it looks like lighttpd reacts on filename having 'log' and asks for password.
May You pls try again with http://warped.homenet.org/xx.zip

Looking on BE log I see BE is very frequently (hundreds per sec.) tries to find file.
Maybe UI FE unresponsiveness is caused by slow BE reaction on FE issued protocol requests?
I wonder why - during playback - FE _constantly_ tries to find file with filename=artist name

Code: Select all

2014-03-21 09:58:15.443329 D  SG(): FindFileDir: Checking '/myth/video/.covers' for '/myth/video/.covers/Icons/artist/acdc.jpg'
2014-03-21 09:58:15.443336 D  SG(): FindFileDir: Checking '/myth/backup' for '/myth/backup/Icons/artist/acdc.jpg'
2014-03-21 09:58:15.443342 D  SG(): FindFileDir: Checking '/myth/tv' for '/myth/tv/Icons/artist/acdc.jpg'
2014-03-21 09:58:15.443348 D  SG(): FindFileDir: Checking '/myth/tv1' for '/myth/tv1/Icons/artist/acdc.jpg'
2014-03-21 09:58:15.443359 D  SG(): FindFileDir: Checking '/myth/video/.fanart' for '/myth/video/.fanart/Icons/artist/acdc.jpg'
2014-03-21 09:58:15.443366 D  SG(): FindFileDir: Checking '/myth/gallery' for '/myth/gallery/Icons/artist/acdc.jpg'
2014-03-21 09:58:15.443375 D  SG(): FindFileDir: Checking '/myth/music' for '/myth/music/Icons/artist/acdc.jpg'
2014-03-21 09:58:15.443384 D  SG(): FindFileDir: Checking '/myth/musicart' for '/myth/musicart/Icons/artist/acdc.jpg'
2014-03-21 09:58:15.443390 D  SG(): FindFileDir: Checking '/myth/gallery' for '/myth/gallery/Icons/artist/acdc.jpg'
2014-03-21 09:58:15.443399 D  SG(): FindFileDir: Checking '/myth/video/.screenshots' for'/myth/video/.screenshots/Icons/artist/acdc.jpg'
User avatar
paulh
Developer
Posts: 909
Joined: Thu Feb 06, 2014 6:09 pm
Great Britain

Re: recent mythmusic commits - high CPU load on FE

Post by paulh »

Can you update and try again. I've fixed a few things including the hunt for the icons looking in all the storage groups. It will now only look in the AlbumArt storage group.
User avatar
warpme
Translator
Posts: 79
Joined: Fri Feb 07, 2014 9:13 pm
Poland

Re: recent mythmusic commits - high CPU load on FE

Post by warpme »

Paul,
I rebuild FE/BE with current master.
I still experience storm of SG(): FindFileDir in BE log (and high CPU usage by this) - but now only when PlayList Editor tree has selected 'All tracks'.
For rest entries (Albums, Artists, etc) there is no problem.
Pls look on attached FE/BE logs produced for following user sequence:
-start FE
-selection of Play Music
-MythMusic has empty playlist
-switch to PlayList Editor Tree view

br
Attachments
xx.zip
logs
(58.05 KiB) Downloaded 97 times
User avatar
paulh
Developer
Posts: 909
Joined: Thu Feb 06, 2014 6:09 pm
Great Britain

Re: recent mythmusic commits - high CPU load on FE

Post by paulh »

Please update both FE and BE and try again.

The tree view should now be a lot quicker since we now don't look up any icons at all. The gallery view should be quicker but not as quick as the tree view since we still need to hunt for the icons/album art. On my dev computer which is a FE only I can't actually tell and speed difference between the two views.
User avatar
warpme
Translator
Posts: 79
Joined: Fri Feb 07, 2014 9:13 pm
Poland

Re: recent mythmusic commits - high CPU load on FE

Post by warpme »

Paul,
Thx for updates. I'll recompiled and quick tests shows that now browsing in editor tree is OK.
However I still have storm of FindFile() (and high CPU load) for playback of some music files - but not for all.
What is more interesting - looking on FE log I see it constantly tries to find 'front.jpg' file in AlbumArt SG.
On my BE, AlbumArt SG dir don't have 'front.jpg', but may files like <number>-front.jpg.
When I copy any jpg file to 'front.jpg', FE/BE becomes quiet all works OK.
Pls find:
FE/BE logs: http://warped.homenet.org/xx.zip
exemplary MP3 file: http://warped.homenet.org/mp3-file.bz2

br
User avatar
paulh
Developer
Posts: 909
Joined: Thu Feb 06, 2014 6:09 pm
Great Britain

Re: recent mythmusic commits - high CPU load on FE

Post by paulh »

OK sounds like some junk has been inserted into the albumart table. Can you please run this query in mysql just to confirm it.

Code: Select all

select * FROM music_albumart WHERE filename = 'front.jpg' AND embedded = 1;
User avatar
warpme
Translator
Posts: 79
Joined: Fri Feb 07, 2014 9:13 pm
Poland

Re: recent mythmusic commits - high CPU load on FE

Post by warpme »

Paul,
here is DB output:

Code: Select all

mysql> select * FROM music_albumart WHERE filename = 'front.jpg' AND embedded = 1;
+-------------+-----------+--------------+-----------+---------+----------+----------+
| albumart_id | filename  | directory_id | imagetype | song_id | embedded | hostname |
+-------------+-----------+--------------+-----------+---------+----------+----------+
|           1 | front.jpg |            0 |         1 |      26 |        1 | mythtv   |
|           2 | front.jpg |            0 |         1 |      27 |        1 | mythtv   |
|           3 | front.jpg |            0 |         1 |      28 |        1 | mythtv   |
|           4 | front.jpg |            0 |         1 |      29 |        1 | mythtv   |
|           5 | front.jpg |            0 |         1 |      30 |        1 | mythtv   |
|           6 | front.jpg |            0 |         1 |      31 |        1 | mythtv   |
|           7 | front.jpg |            0 |         1 |      32 |        1 | mythtv   |
|           8 | front.jpg |            0 |         1 |      33 |        1 | mythtv   |
|           9 | front.jpg |            0 |         1 |      51 |        1 | mythtv   |
|          10 | front.jpg |            0 |         1 |      52 |        1 | mythtv   |
|          11 | front.jpg |            0 |         1 |      53 |        1 | mythtv   |
|          12 | front.jpg |            0 |         1 |      54 |        1 | mythtv   |
|          13 | front.jpg |            0 |         1 |      55 |        1 | mythtv   |
|          14 | front.jpg |            0 |         1 |      56 |        1 | mythtv   |
|          15 | front.jpg |            0 |         1 |      57 |        1 | mythtv   |
|          16 | front.jpg |            0 |         1 |      58 |        1 | mythtv   |
|          17 | front.jpg |            0 |         1 |      59 |        1 | mythtv   |
|          18 | front.jpg |            0 |         1 |      60 |        1 | mythtv   |
|          19 | front.jpg |            0 |         1 |      89 |        1 | mythtv   |
|          20 | front.jpg |            0 |         1 |      90 |        1 | mythtv   |
|          21 | front.jpg |            0 |         1 |      91 |        1 | mythtv   |
|          22 | front.jpg |            0 |         1 |      92 |        1 | mythtv   |
|          23 | front.jpg |            0 |         1 |      93 |        1 | mythtv   |
|          24 | front.jpg |            0 |         1 |      94 |        1 | mythtv   |
|          25 | front.jpg |            0 |         1 |      95 |        1 | mythtv   |
|          26 | front.jpg |            0 |         1 |      96 |        1 | mythtv   |
|          27 | front.jpg |            0 |         1 |     329 |        1 | mythtv   |
|          28 | front.jpg |            0 |         1 |     330 |        1 | mythtv   |
|          29 | front.jpg |            0 |         1 |     331 |        1 | mythtv   |
|          30 | front.jpg |            0 |         1 |     332 |        1 | mythtv   |
|          31 | front.jpg |            0 |         1 |     333 |        1 | mythtv   |
|          32 | front.jpg |            0 |         1 |     334 |        1 | mythtv   |
|          33 | front.jpg |            0 |         1 |     335 |        1 | mythtv   |
|          34 | front.jpg |            0 |         1 |     336 |        1 | mythtv   |
|          35 | front.jpg |            0 |         1 |     337 |        1 | mythtv   |
|          36 | front.jpg |            0 |         1 |     338 |        1 | mythtv   |
|          37 | front.jpg |            0 |         1 |     339 |        1 | mythtv   |
|          38 | front.jpg |            0 |         1 |     340 |        1 | mythtv   |
|          39 | front.jpg |            0 |         1 |     392 |        1 | mythtv   |
|          40 | front.jpg |            0 |         1 |     393 |        1 | mythtv   |
|          41 | front.jpg |            0 |         1 |     394 |        1 | mythtv   |
|          42 | front.jpg |            0 |         1 |     395 |        1 | mythtv   |
|          43 | front.jpg |            0 |         1 |     396 |        1 | mythtv   |
|          44 | front.jpg |            0 |         1 |     397 |        1 | mythtv   |
|          45 | front.jpg |            0 |         1 |     398 |        1 | mythtv   |
|          46 | front.jpg |            0 |         1 |     399 |        1 | mythtv   |
|          47 | front.jpg |            0 |         1 |     400 |        1 | mythtv   |
|          48 | front.jpg |            0 |         1 |     401 |        1 | mythtv   |
|          49 | front.jpg |            0 |         1 |     402 |        1 | mythtv   |
|          50 | front.jpg |            0 |         1 |     403 |        1 | mythtv   |
|          51 | front.jpg |            0 |         1 |     404 |        1 | mythtv   |
|          52 | front.jpg |            0 |         1 |     405 |        1 | mythtv   |
|          53 | front.jpg |            0 |         1 |     452 |        1 | mythtv   |
|          54 | front.jpg |            0 |         1 |     453 |        1 | mythtv   |
|          55 | front.jpg |            0 |         1 |     454 |        1 | mythtv   |
|          56 | front.jpg |            0 |         1 |     455 |        1 | mythtv   |
|          57 | front.jpg |            0 |         1 |     456 |        1 | mythtv   |
|          58 | front.jpg |            0 |         1 |     457 |        1 | mythtv   |
|          59 | front.jpg |            0 |         1 |     458 |        1 | mythtv   |
|          60 | front.jpg |            0 |         1 |     459 |        1 | mythtv   |
|          61 | front.jpg |            0 |         1 |     460 |        1 | mythtv   |
|          62 | front.jpg |            0 |         1 |     461 |        1 | mythtv   |
|          63 | front.jpg |            0 |         1 |     462 |        1 | mythtv   |
|          64 | front.jpg |            0 |         1 |     463 |        1 | mythtv   |
|          65 | front.jpg |            0 |         1 |     464 |        1 | mythtv   |
|          66 | front.jpg |            0 |         1 |     465 |        1 | mythtv   |
|          67 | front.jpg |            0 |         1 |     466 |        1 | mythtv   |
|          68 | front.jpg |            0 |         1 |     467 |        1 | mythtv   |
|          69 | front.jpg |            0 |         1 |     468 |        1 | mythtv   |
|          70 | front.jpg |            0 |         1 |     469 |        1 | mythtv   |
|          71 | front.jpg |            0 |         1 |     470 |        1 | mythtv   |
|          72 | front.jpg |            0 |         1 |     471 |        1 | mythtv   |
|          73 | front.jpg |            0 |         1 |     472 |        1 | mythtv   |
|          74 | front.jpg |            0 |         1 |     473 |        1 | mythtv   |
|          75 | front.jpg |            0 |         1 |     474 |        1 | mythtv   |
|          76 | front.jpg |            0 |         1 |     475 |        1 | mythtv   |
|          77 | front.jpg |            0 |         1 |     476 |        1 | mythtv   |
|          78 | front.jpg |            0 |         1 |     477 |        1 | mythtv   |
|          79 | front.jpg |            0 |         1 |     478 |        1 | mythtv   |
|          80 | front.jpg |            0 |         1 |     479 |        1 | mythtv   |
|          81 | front.jpg |            0 |         1 |     480 |        1 | mythtv   |
|          82 | front.jpg |            0 |         1 |     481 |        1 | mythtv   |
|          83 | front.jpg |            0 |         1 |     482 |        1 | mythtv   |
|          84 | front.jpg |            0 |         1 |     483 |        1 | mythtv   |
|          85 | front.jpg |            0 |         1 |     525 |        1 | mythtv   |
|          86 | front.jpg |            0 |         1 |     526 |        1 | mythtv   |
|          87 | front.jpg |            0 |         1 |     527 |        1 | mythtv   |
|          88 | front.jpg |            0 |         1 |     528 |        1 | mythtv   |
|          89 | front.jpg |            0 |         1 |     529 |        1 | mythtv   |
|          90 | front.jpg |            0 |         1 |     530 |        1 | mythtv   |
|          91 | front.jpg |            0 |         1 |     531 |        1 | mythtv   |
|          92 | front.jpg |            0 |         1 |     532 |        1 | mythtv   |
|          93 | front.jpg |            0 |         1 |     533 |        1 | mythtv   |
|          94 | front.jpg |            0 |         1 |     534 |        1 | mythtv   |
|          95 | front.jpg |            0 |         1 |     960 |        1 | mythtv   |
|          96 | front.jpg |            0 |         1 |     961 |        1 | mythtv   |
|          97 | front.jpg |            0 |         1 |     962 |        1 | mythtv   |
|          98 | front.jpg |            0 |         1 |     963 |        1 | mythtv   |
|          99 | front.jpg |            0 |         1 |     964 |        1 | mythtv   |
|         100 | front.jpg |            0 |         1 |     965 |        1 | mythtv   |
|         101 | front.jpg |            0 |         1 |     966 |        1 | mythtv   |
|         102 | front.jpg |            0 |         1 |     967 |        1 | mythtv   |
|         103 | front.jpg |            0 |         1 |     968 |        1 | mythtv   |
|         104 | front.jpg |            0 |         1 |     969 |        1 | mythtv   |
|         105 | front.jpg |            0 |         1 |     970 |        1 | mythtv   |
|         106 | front.jpg |            0 |         1 |     971 |        1 | mythtv   |
|         107 | front.jpg |            0 |         1 |     972 |        1 | mythtv   |
|         108 | front.jpg |            0 |         1 |     973 |        1 | mythtv   |
|         109 | front.jpg |            0 |         1 |     974 |        1 | mythtv   |
|         110 | front.jpg |            0 |         1 |     975 |        1 | mythtv   |
|         111 | front.jpg |            0 |         1 |     976 |        1 | mythtv   |
|         112 | front.jpg |            0 |         1 |     977 |        1 | mythtv   |
|         113 | front.jpg |            0 |         1 |     978 |        1 | mythtv   |
|         114 | front.jpg |            0 |         1 |     979 |        1 | mythtv   |
|         115 | front.jpg |            0 |         1 |     980 |        1 | mythtv   |
|         116 | front.jpg |            0 |         1 |     981 |        1 | mythtv   |
|         117 | front.jpg |            0 |         1 |     982 |        1 | mythtv   |
|         118 | front.jpg |            0 |         1 |     983 |        1 | mythtv   |
|         119 | front.jpg |            0 |         1 |     984 |        1 | mythtv   |
|         120 | front.jpg |            0 |         1 |     985 |        1 | mythtv   |
|         121 | front.jpg |            0 |         1 |     986 |        1 | mythtv   |
|         122 | front.jpg |            0 |         1 |     987 |        1 | mythtv   |
|         123 | front.jpg |            0 |         1 |     988 |        1 | mythtv   |
|         124 | front.jpg |            0 |         1 |     989 |        1 | mythtv   |
|         125 | front.jpg |            0 |         1 |     990 |        1 | mythtv   |
|         126 | front.jpg |            0 |         1 |     991 |        1 | mythtv   |
|         127 | front.jpg |            0 |         1 |     992 |        1 | mythtv   |
|         128 | front.jpg |            0 |         1 |    1045 |        1 | mythtv   |
|         129 | front.jpg |            0 |         1 |    1046 |        1 | mythtv   |
|         130 | front.jpg |            0 |         1 |    1047 |        1 | mythtv   |
|         131 | front.jpg |            0 |         1 |    1048 |        1 | mythtv   |
|         132 | front.jpg |            0 |         1 |    1049 |        1 | mythtv   |
|         133 | front.jpg |            0 |         1 |    1050 |        1 | mythtv   |
|         134 | front.jpg |            0 |         1 |    1051 |        1 | mythtv   |
|         135 | front.jpg |            0 |         1 |    1052 |        1 | mythtv   |
|         136 | front.jpg |            0 |         1 |    1053 |        1 | mythtv   |
|         137 | front.jpg |            0 |         1 |    1054 |        1 | mythtv   |
|         138 | front.jpg |            0 |         1 |    1055 |        1 | mythtv   |
|         139 | front.jpg |            0 |         1 |    1056 |        1 | mythtv   |
|         140 | front.jpg |            0 |         1 |    1057 |        1 | mythtv   |
|         141 | front.jpg |            0 |         1 |    1058 |        1 | mythtv   |
|         142 | front.jpg |            0 |         1 |    1059 |        1 | mythtv   |
|         143 | front.jpg |            0 |         1 |    1060 |        1 | mythtv   |
|         144 | front.jpg |            0 |         1 |    1061 |        1 | mythtv   |
|         145 | front.jpg |            0 |         1 |    1062 |        1 | mythtv   |
|         146 | front.jpg |            0 |         1 |    1063 |        1 | mythtv   |
|         147 | front.jpg |            0 |         1 |    1064 |        1 | mythtv   |
|         148 | front.jpg |            0 |         1 |    1065 |        1 | mythtv   |
|         149 | front.jpg |            0 |         1 |    1066 |        1 | mythtv   |
|         150 | front.jpg |            0 |         1 |    1067 |        1 | mythtv   |
|         151 | front.jpg |            0 |         1 |    1068 |        1 | mythtv   |
|         152 | front.jpg |            0 |         1 |    1069 |        1 | mythtv   |
|         153 | front.jpg |            0 |         1 |    1070 |        1 | mythtv   |
|         154 | front.jpg |            0 |         1 |    1071 |        1 | mythtv   |
|         155 | front.jpg |            0 |         1 |    1072 |        1 | mythtv   |
|         156 | front.jpg |            0 |         1 |    1073 |        1 | mythtv   |
|         157 | front.jpg |            0 |         1 |    1074 |        1 | mythtv   |
|         158 | front.jpg |            0 |         1 |    1075 |        1 | mythtv   |
|         159 | front.jpg |            0 |         1 |    1076 |        1 | mythtv   |
|         160 | front.jpg |            0 |         1 |    1077 |        1 | mythtv   |
|         161 | front.jpg |            0 |         1 |    1078 |        1 | mythtv   |
|         162 | front.jpg |            0 |         1 |    1079 |        1 | mythtv   |
|         163 | front.jpg |            0 |         1 |    1080 |        1 | mythtv   |
|         164 | front.jpg |            0 |         1 |    1081 |        1 | mythtv   |
|         165 | front.jpg |            0 |         1 |    1082 |        1 | mythtv   |
|         166 | front.jpg |            0 |         1 |    1083 |        1 | mythtv   |
|         167 | front.jpg |            0 |         1 |    1084 |        1 | mythtv   |
|         168 | front.jpg |            0 |         1 |    1085 |        1 | mythtv   |
|         169 | front.jpg |            0 |         1 |    1086 |        1 | mythtv   |
|         170 | front.jpg |            0 |         1 |    1087 |        1 | mythtv   |
|         171 | front.jpg |            0 |         1 |    1088 |        1 | mythtv   |
|         172 | front.jpg |            0 |         1 |    1089 |        1 | mythtv   |
|         173 | front.jpg |            0 |         1 |    1090 |        1 | mythtv   |
|         174 | front.jpg |            0 |         1 |    1091 |        1 | mythtv   |
|         175 | front.jpg |            0 |         1 |    1092 |        1 | mythtv   |
|         176 | front.jpg |            0 |         1 |    1093 |        1 | mythtv   |
|         177 | front.jpg |            0 |         1 |    1094 |        1 | mythtv   |
|         178 | front.jpg |            0 |         1 |    1095 |        1 | mythtv   |
|         179 | front.jpg |            0 |         1 |    1096 |        1 | mythtv   |
|         180 | front.jpg |            0 |         1 |    1097 |        1 | mythtv   |
|         181 | front.jpg |            0 |         1 |    1098 |        1 | mythtv   |
|         182 | front.jpg |            0 |         1 |    1099 |        1 | mythtv   |
|         183 | front.jpg |            0 |         1 |    1100 |        1 | mythtv   |
|         184 | front.jpg |            0 |         1 |    1101 |        1 | mythtv   |
|         185 | front.jpg |            0 |         1 |    1102 |        1 | mythtv   |
|         186 | front.jpg |            0 |         1 |    1103 |        1 | mythtv   |
|         187 | front.jpg |            0 |         1 |    1104 |        1 | mythtv   |
|         188 | front.jpg |            0 |         1 |    1105 |        1 | mythtv   |
|         189 | front.jpg |            0 |         1 |    1106 |        1 | mythtv   |
|         190 | front.jpg |            0 |         1 |    1107 |        1 | mythtv   |
|         191 | front.jpg |            0 |         1 |    1108 |        1 | mythtv   |
|         192 | front.jpg |            0 |         1 |    1109 |        1 | mythtv   |
|         193 | front.jpg |            0 |         1 |    1110 |        1 | mythtv   |
|         194 | front.jpg |            0 |         1 |    1111 |        1 | mythtv   |
|         195 | front.jpg |            0 |         1 |    1112 |        1 | mythtv   |
|         196 | front.jpg |            0 |         1 |    1113 |        1 | mythtv   |
|         197 | front.jpg |            0 |         1 |    1114 |        1 | mythtv   |
|         198 | front.jpg |            0 |         1 |    1115 |        1 | mythtv   |
|         199 | front.jpg |            0 |         1 |    1116 |        1 | mythtv   |
|         200 | front.jpg |            0 |         1 |    1117 |        1 | mythtv   |
|         201 | front.jpg |            0 |         1 |    1118 |        1 | mythtv   |
|         202 | front.jpg |            0 |         1 |    1138 |        1 | mythtv   |
|         203 | front.jpg |            0 |         1 |    1139 |        1 | mythtv   |
|         204 | front.jpg |            0 |         1 |    1140 |        1 | mythtv   |
|         205 | front.jpg |            0 |         1 |    1141 |        1 | mythtv   |
|         206 | front.jpg |            0 |         1 |    1142 |        1 | mythtv   |
|         207 | front.jpg |            0 |         1 |    1143 |        1 | mythtv   |
|         208 | front.jpg |            0 |         1 |    1144 |        1 | mythtv   |
|         209 | front.jpg |            0 |         1 |    1145 |        1 | mythtv   |
|         210 | front.jpg |            0 |         1 |    1146 |        1 | mythtv   |
|         211 | front.jpg |            0 |         1 |    1147 |        1 | mythtv   |
|         212 | front.jpg |            0 |         1 |    1148 |        1 | mythtv   |
|         213 | front.jpg |            0 |         1 |    1149 |        1 | mythtv   |
|         214 | front.jpg |            0 |         1 |    1150 |        1 | mythtv   |
|         215 | front.jpg |            0 |         1 |    1151 |        1 | mythtv   |
|         216 | front.jpg |            0 |         1 |    1152 |        1 | mythtv   |
+-------------+-----------+--------------+-----------+---------+----------+----------+
216 rows in set (0.07 sec)
And here is content of MusicArt SG

Code: Select all

[root@mythtv ~]# ls -la /myth/musicart/AlbumArt/
total 108
drwxr-xr-x 2 mythtv mythtv  4096 Mar 25 09:23 .
drwxr-xr-x 3 mythtv mythtv  4096 Mar 25 09:21 ..
-rw-r--r-- 1 mythtv mythtv  7911 Mar 24 21:35 1079-front.jpg
-rw-r--r-- 1 mythtv mythtv 11340 Mar 25 09:21 26-front.jpg
-rw-r--r-- 1 mythtv mythtv 11340 Mar 23 21:51 27-front.jpg
-rw-r--r-- 1 mythtv mythtv 11340 Mar 20 17:59 28-front.jpg
-rw-r--r-- 1 mythtv mythtv 11340 Mar 20 17:59 29-front.jpg
-rw-r--r-- 1 mythtv mythtv 11340 Mar 20 17:59 30-front.jpg
-rw-r--r-- 1 mythtv mythtv 11340 Mar 20 17:59 31-front.jpg
-rw-r--r-- 1 mythtv mythtv 12147 Mar 24 21:35 52-front.jpg
[root@mythtv ~]#
br
User avatar
paulh
Developer
Posts: 909
Joined: Thu Feb 06, 2014 6:09 pm
Great Britain

Re: recent mythmusic commits - high CPU load on FE

Post by paulh »

Can you try commenting out this line

https://code.mythtv.org/cgit/mythtv/tre ... s.cpp#n173

So it look like this

Code: Select all

    //gCoreContext->SendMessage(QString("MUSIC_METADATA_CHANGED %1").arg(songID));
Looks like sending a MUSIC_METADATA_CHANGED there could cause an infinite loop under some circumstances which I think is the cause of your storm of FindFile() (and high CPU load) when playing some files. It does not fix the underlying problem of the albumart table being filled with invalid entries for some reason though.
Post Reply