Bug 18011 - squeezeboxserver running at 100% CPU
: squeezeboxserver running at 100% CPU
Status: RESOLVED INVALID
Product: Logitech Media Server
Classification: Unclassified
Component: Debian
: 7.7.2
: PC Ubuntu Linux
: -- normal (vote)
: ---
Assigned To: Unassigned bug - please assign me!
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-10-18 02:35 UTC by Mikkel Munch Mortensen
Modified: 2013-05-17 15:32 UTC (History)
1 user (show)

See Also:
Category: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mikkel Munch Mortensen 2012-10-18 02:35:23 UTC
After a while, squeezeboxserver starts consuming all available CPU, making the web interface unresponsive and my Squeezeboxes useless. I've disabled most plugins and the nightly rescan of my library without any luck.

The server.log is full of stuff like this, but I don't know if it's related:

[12-10-18 11:15:28.0995] Slim::Utils::Misc::msg (1304) Warning: [11:15:28.0985] EV: error in callback (ignoring): Can't call method "display" on an undefined value at /usr/share/perl5/Slim/Display/Lib/TextVFD.pm line 157.
[12-10-18 11:15:28.2493] Slim::Utils::Misc::msg (1304) Warning: [11:15:28.2484] EV: error in callback (ignoring): Can't call method "display" on an undefined value at /usr/share/perl5/Slim/Display/Lib/TextVFD.pm line 157.
[12-10-18 11:15:28.3990] Slim::Utils::Misc::msg (1304) Warning: [11:15:28.3980] EV: error in callback (ignoring): Can't call method "display" on an undefined value at /usr/share/perl5/Slim/Display/Lib/TextVFD.pm line 157.

They tend to come in groups every once in a while. But after a restart of the service, none appear. Until sometime something obviously goes wrong and the CPU ugesage goes up to 100% again.

The log is set to only log errors. If you need me to change logging settings and post the log, please tell me.

Players connected: 1 Classic, 1 Duet (Receiver+Controller), 1 Radio, 1 Squeezeslave.

It's been like this for a while. 6-12 months or maybe even more. Probably also with earlier versions of squeezeboxserver. I even switched to newer hardware as part of my debugging, as I run other stuff on the same machine and just thought it wasn't capable enough for the jobs it has to do.
Comment 1 Mikkel Munch Mortensen 2012-10-18 02:36:19 UTC
I selected "Debian" as the component, but I have no clue whether that's right.
Comment 2 Mikkel Munch Mortensen 2012-10-18 02:41:24 UTC
This may be related to bug #17509.
Comment 3 Mikael Nyberg 2012-10-19 11:48:38 UTC
I'm not Logitech ,but VFD is the display on the classic , do you use any plugin that do things with the classic display ?
Comment 4 Mikkel Munch Mortensen 2012-10-19 23:46:01 UTC
(In reply to comment #3)

> I'm not Logitech

Thanks for caring anyway :)

> VFD is the display on the classic , do you use any
> plugin that do things with the classic display ?

I had disabled almost all plugins, except a handful of Logitech provided plugins.

Now I disabled all plugins that was disableable (some checkboxes could be uncheched). Now I cant even reach the plugins page. It just says:

404 Not Found: plugins/Extensions/settings/basic.html

(Is there a conf file somewhere I eventually can edit to get it back?)

And when restarting, apart from the usual startup messages, now I also get a new message (the last one):

2012-10-20 08:39:01 squeezeboxserver_safe stopped.
2012-10-20 08:39:01 squeezeboxserver_safe started.
[12-10-20 08:39:04.5882] main::init (354) Starting Logitech Media Server (v7.7.2, r33893, Wed Mar 14 05:46:46 PDT 2012) perl 5.014002
[12-10-20 08:39:05.7927] Slim::Control::Request::execute (1869) Request in error, returning

I will return tomorrow when I can tell if it has made any difference.

If VFD is the Classic, I guess the next logical step will be to unplug that player to see if it makes any difference.
Comment 5 Mikkel Munch Mortensen 2012-10-19 23:47:19 UTC
Sorry: Some checkboxes could NOT be uncheched.
Comment 6 Mikkel Munch Mortensen 2012-10-22 01:49:33 UTC
Still having this problem.

After disabling all plugins, those log lines...

> error in callback (ignoring): Can't call method "display" on an undefined value at /usr/share/perl5/Slim/Display/Lib/TextVFD.pm line 157.

...aren't present in the log anymore.

The content of my server.log since last manual restart:

2012-10-20 08:39:01 squeezeboxserver_safe stopped.
2012-10-20 08:39:01 squeezeboxserver_safe started.
[12-10-20 08:39:04.5882] main::init (354) Starting Logitech Media Server (v7.7.2, r33893, Wed Mar 14 05:46:46 PDT 2012) perl 5.014002
[12-10-20 08:39:05.7927] Slim::Control::Request::execute (1869) Request in error, returning
[12-10-21 08:39:05.0023] Slim::Control::Request::execute (1869) Request in error, returning
[12-10-21 19:03:44.1475] Slim::Utils::Scanner::scanDirectory (318) Found 1 files in /[...].mp3
[12-10-22 08:39:04.0014] Slim::Control::Request::execute (1869) Request in error, returning

I don't know if it is of any interest, but it looks like something's happening once a day, almost exactly on a 24 hour schedule from the time of the restart.

I've started tracking the CPU usage of squeezeboxserver every 10 minutes, will now restart and see if I can see a pattern in how long it takes before the CPU usage goes up to 100%. Will also find out whether it is gradually increasing or going up all of a sudden at some point.
Comment 7 Mikael Nyberg 2013-05-17 03:08:38 UTC
24h do you schedule a rescan (see LMS settings about that )
Comment 8 Mikkel Munch Mortensen 2013-05-17 06:56:36 UTC
No, I didn't have anything scheduled.

But I'm past the problem now. I'm not quite sure, but I think a factory reset of my SB Radio did the trick. At least, I'd recommend factory resetting every SB if anyone is experiencing the same.
Comment 9 Michael Herger 2013-05-17 15:32:49 UTC
Thanks for the feedback.