Bugzilla – Bug 2763
MoodLogic plugin causes SlimServer to stop
Last modified: 2008-09-15 14:38:10 UTC
Here is my Setup: WinXP, SP2 with latest updates. PC Clone AMD 1.8gHz, 1gbyte of RAM, 2-40gbyte hard drives. SlimServer 6.2.1 (fresh install on Dec 27). MoodLogic 2.71 (installed/registered on Dec 27) I'm running this on my Desktop machine that I intend to use as my SlimServer box. I have the "SoftSquezze" program running on my Laptop to test things out. I turned off all screensavers and made sure the Desktop does not go into a "powerdown" mode. I've set SlimServer to use MoodLogic to control the music library (using the radio button in the server settings). Here is the problem: I start SlimServer on the desktop and connect just fine with Firefox on the localhost and via SoftSquezze on my laptop. SlimServer runs for about 10 mins the "stops". The Windows event log from the desktop shows this error: "The description for Event ID ( 0 ) in Source ( Application ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: Can't call method "value" on an undefined value at d:/Program Files/SlimServer/server/Plugins/MoodLogic/Plugin.pm line 452." Here is the section of code from Plugin.pm (I've added the line numbers): 446 $::d_moodlogic && msg("MoodLogic: Song scan complete, checking playlists\n"); 447 448 449 if (defined $playlist && !$playlist->EOF) { 450 451 my $name = $playlist->Fields('name')->value; 452 my %cacheEntry = (); 453 my $url = 'moodlogicplaylist:' . Slim::Web::HTTP::escape($name); 454 455 $::d_moodlogic && msg("MoodLogic: Found MoodLogic Playlist: $url\n"); 456 457 # add this playlist to our playlist library 458 $cacheEntry{'TITLE'} = $prefix . $name . $suffix; 459 $cacheEntry{'LIST'} = getPlaylistItems($playlist); 460 $cacheEntry{'CT'} = 'mlp'; 461 $cacheEntry{'TAG'} = 1; 462 $cacheEntry{'VALID'} = '1'; 463 464 Slim::Music::Info::updateCacheEntry($url, \%cacheEntry); 465 466 $playlist->MoveNext unless $playlist->EOF; 467 return 1; 468 } It would appear that the MoodLogic plugin is crashing causing SlimServer to stop. I tried to "deselect" MoodLogic as the music library host and got the same result. I then changed the name of the MoodLogin plugin directory to: "d:/Program Files/SlimServer/server/Plugins/xxxMoodLogic" and restarted SlimServer. It's been running for about 2 hours now without any crashes! Update: Reinstalled SlimServer and enabled MoodLogic. Had same crash. Just disabled MoodLogic plugin and unchecked use MoodLogic as music library host. It's still running after a couple of hours.
Do you have any playlists set up within MoodLogic? Has moodlogic completed its validation of all tracks?
Do you have any playlists set up within MoodLogic? No Has moodlogic completed its validation of all tracks? Scan and validate had completed 100% before SlimServer was started.
This used to be a problem with moodlogic 2.70, so I'm really not understanding what could be going on with 2.71 since it has been unchanged in well over a year. however, I do have some ideas on how to get around the problem. i don't have a moodlogic setup any more, so I cannot reproduce the problem. Would you be willing to try out the latest nightly build and confirm whether that works or not for you? http://www.slimdevices.com/downloads/nightly/latest/6.2.2/ if this is still bad in teh latest build, I have a few ideas that I can put into the next.
Any luck with the 6.2.2 nightly builds?
I just checked in change 7036 - which should fix this crash. Please verify. It will be in the 2006-04-22 6.2.2 nightly. http://slimdevices.com/dev_nightly.html Thanks.