Bug 9394 - SqueezeScrobbler not using Request::renderAsArray correctly
: SqueezeScrobbler not using Request::renderAsArray correctly
Status: RESOLVED FIXED
Product: Logitech Media Server
Classification: Unclassified
Component: Misc
: 7.2
: PC Ubuntu Linux
: -- normal (vote)
: ---
Assigned To: Unassigned bug - please assign me!
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2008-09-04 10:35 UTC by Philip Meyer
Modified: 2008-09-09 09:25 UTC (History)
5 users (show)

See Also:
Category: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Philip Meyer 2008-09-04 10:35:08 UTC
I've updated to 7.2/trunk SVN 23036, and I see the following in the log:

[16:56:20.1293] Slim::Control::Request::renderAsArray (2185) Error: request should set useIxHashes in Slim::Control::Request->new()
[16:56:20.1298] Slim::Control::Request::renderAsArray (2185) Backtrace:

   frame 0: Slim::Utils::Log::logBacktrace (P:/Music/SlimServer/trunk/server/Slim/Control/Request.pm line 2185)
   frame 1: Slim::Control::Request::renderAsArray (Plugins/SqueezeScrobbler/Scrobbler.pm line 946)
   frame 2: Plugins::SqueezeScrobbler::Scrobbler::otherCommand (P:/Music/SlimServer/trunk/server/Slim/Control/Request.pm line 1996)
   frame 3: (eval) (P:/Music/SlimServer/trunk/server/Slim/Control/Request.pm line 1996)
   frame 4: Slim::Control::Request::notify (P:/Music/SlimServer/trunk/server/Slim/Control/Request.pm line 846)
   frame 5: Slim::Control::Request::checkNotifications (P:\Music\SlimServer\trunk\server\slimserver.pl line 510)
   frame 6: main::idle (P:\Music\SlimServer\trunk\server\slimserver.pl line 481)
   frame 7: main::main (P:\Music\SlimServer\trunk\server\slimserver.pl line 1043)
Comment 1 James Richardson 2008-09-04 11:43:26 UTC
Philip:  does this work with the Release version of 7.2?
Comment 2 Philip Meyer 2008-09-04 11:57:30 UTC
I've never really had the release version of 7.2 installed, having moved from the private beta testing SVN branch to 7.2/trunk when it was released.  I usually update SVN once a day, but I have been away the last 5 days.  I think it was alright last friday.
Comment 3 Michael Herger 2008-09-05 03:05:08 UTC
very likely to change 23014
Comment 4 Michael Herger 2008-09-05 03:12:04 UTC
I meant to say: very likely due to change 23014
Comment 5 Michael Herger 2008-09-05 03:13:04 UTC
*** Bug 9402 has been marked as a duplicate of this bug. ***
Comment 6 Sami Tillgren 2008-09-05 05:19:02 UTC
(In reply to comment #5)

Please note about <span class="bz_closed"><a href="show_bug.cgi?id=9402" title="RESOLVED DUPLICATE - Streaming does not work anymore!">Bug 9402</a></span>, that upgrading to squeezecenter 7.3~23045 does not help.
Nor does removing the last.fm scrobbler. Still not able to play the stream remotely.

However I cannot confirm that these log messages are related to that bug. Yes, I get those errors, but only after changing the loglevel after my problem started.
Comment 7 Sami Tillgren 2008-09-05 05:20:51 UTC
(In reply to comment #6)
(Sorry about the code above. I just cannot use Bugzilla.)
Comment 8 Michael Herger 2008-09-05 05:40:36 UTC
going forward (7.2.1 -> 7.3) won't help you, but 7.2.0 should. The scrobbler was a red herring - sorry for the confusion. Are you on Windows XP too?
Comment 9 Sami Tillgren 2008-09-05 06:29:45 UTC
> Are you on Windows XP too?
Nop, I'm running Ubuntu Linux.
Comment 10 Adrian Smith 2008-09-05 10:17:00 UTC
Yes with the change to 7.2.x the caller needs to set a flag when it creates the request if it is going to call renderAsArray - in this case it means the SqueezeScrobber needs updating.

This is really a warning, but I left it as an error message so plugin authors would see it - the issue is that the result of renderAsArray may be wrong.

The reason for these changes are that they give a reasonable performance improvement to the normal use of the request mechanism, so it was worth making this change.
Comment 11 Sami Tillgren 2008-09-05 10:28:38 UTC
Please note, that I did not file this Bug 9394. I filed a Bug 9402, but it got resolved and marked duplicate to this where we are now.
My problem still remains - streaming does not work - and it may not even have anything to do with this error message.
Comment 12 Markus Schiegl 2008-09-05 11:43:30 UTC
I see the same on SC 7.3/linux. I don't use the scrobbler plugin and the included one (to scrobble) is disabled. Fortunately everything else works fine so far - from my POV it's "just" an error message...
Comment 13 Andy Grundman 2008-09-05 11:51:02 UTC
OK, what are the steps to reproduce the error?
Comment 14 Adrian Smith 2008-09-05 12:02:24 UTC
Markus, can you post exactly what you see as if you don't have the Scrobbler plugin installed then the message should be different.
Comment 15 Markus Schiegl 2008-09-05 12:20:06 UTC
really easy on my side:  just select "play", "add", "delete" on any album (in the webinterface, on the left side)...

before it gets confusing (for me): i've not installed an external scrobbler plugin (there has been an external one, hasn't it?) BUT there is the included one in Slim/Plugins/Lastfm which lists as:
 Last.fm Audioscrobbler (v1.0) <- disabled
 Last.fm Radio (v1.0) <- enabled

If everybody is talking about the included one, then it's installed but disabled in the plugins page.

Finally the error message:

[08-09-05 21:18:45.3798] Slim::Control::Request::renderAsArray (2182) Error: request should set useIxHashes in Slim::Control::Request->new()
[08-09-05 21:18:45.3804] Slim::Control::Request::renderAsArray (2182) Backtrace:

   frame 0: Slim::Utils::Log::logBacktrace (/opt/SqueezeCenter_svn/7.3/trunk/server/Slim/Control/Request.pm line 2182)
   frame 1: Slim::Control::Request::renderAsArray (/opt/SqueezeCenter_svn/7.3/trunk/server/Slim/Control/Request.pm line 1926)
   frame 2: Slim::Control::Request::callback (/opt/SqueezeCenter_svn/7.3/trunk/server/Slim/Control/Request.pm line 1828)
   frame 3: Slim::Control::Request::executeDone (/opt/SqueezeCenter_svn/7.3/trunk/server/Slim/Control/Request.pm line 1816)
   frame 4: Slim::Control::Request::execute (/opt/SqueezeCenter_svn/7.3/trunk/server/Slim/Control/Request.pm line 864)
   frame 5: Slim::Control::Request::executeRequest (/opt/SqueezeCenter_svn/7.3/trunk/server/Slim/Web/HTTP.pm line 974)
   frame 6: Slim::Web::HTTP::processURL (/opt/SqueezeCenter_svn/7.3/trunk/server/Slim/Web/HTTP.pm line 789)
   frame 7: Slim::Web::HTTP::processHTTP (/opt/SqueezeCenter_svn/7.3/trunk/server/Slim/Networking/IO/Select.pm line 248)
   frame 8: (eval) (/opt/SqueezeCenter_svn/7.3/trunk/server/Slim/Networking/IO/Select.pm line 248)
   frame 9: Slim::Networking::IO::Select::select (/opt/squeezecenter/slimserver.pl line 531)
   frame 10: main::idle (/opt/squeezecenter/slimserver.pl line 481)
   frame 11: main::main (/opt/squeezecenter/slimserver.pl line 1043)
Comment 16 Markus Schiegl 2008-09-05 12:23:31 UTC
ah, just saw the difference in the logs myself (Slim::Web::HTTP)...
Comment 17 Adrian Smith 2008-09-05 12:28:12 UTC
Ah - ok this probably cosmetic for you then, but we need to review whether to remove that bit of code.

Andy - this is coming from the code saying: 
# This is a hack to make passing back of the "@p" array work. But limit it to
# generateHTTPResponse, as Jonas Salling is the only caller.

Andy - suggest we get rid of this now?  Its not going to work with this new code unless we disable the optimisation just in case...
Comment 18 Andy Grundman 2008-09-05 12:32:31 UTC
Oh yeah, I saw that nasty code, let's remove it.  Especially since it's calling the slow Slim::Utils::PerlRunTime::realNameForCodeRef 
Comment 19 Adrian Smith 2008-09-05 12:41:53 UTC
Markus's case should be fixed by change 23055.

This leaves the original bug which is an issue with SqueezeScrobbler and is probably not related to streaming in 7.3.
Comment 20 Markus Schiegl 2008-09-05 13:11:26 UTC
(In reply to comment #19)
> Markus's case should be fixed by change 23055.
thanks. no more error messages.
Comment 21 Sami Tillgren 2008-09-05 14:33:09 UTC
(In reply to comment #20)
> (In reply to comment #19)
> > Markus's case should be fixed by change 23055.
> thanks. no more error messages.

Yes, I also confirm. No more error messages. 
Remote streaming does not work either though. I have now tried with two different clients (XP+Winamp). With both the same bahaviour, clicking the play button in squeezecenter's album list on the left side does not populate the playlist on the right, thus no ear candy. What gives?
From the logging settings I did set the player.streaming.remote -> Debug, but not still receiving any entries in the server log. 
Comment 22 Adrian Smith 2008-09-05 14:46:07 UTC
Sami - could I suggest you reopen the other bug for this as its more likely to be due to remote streaming in 7.3.
Comment 23 Sami Tillgren 2008-09-05 23:17:22 UTC
Done: Bug 9418
Comment 24 James Richardson 2008-09-09 09:25:54 UTC
(In reply to comment #21)
> (In reply to comment #20)
> > (In reply to comment #19)
> > > Markus's case should be fixed by change 23055.
> > thanks. no more error messages.
> 
> Yes, I also confirm. No more error messages. 
> 

Closing this bug per above comments.