Bugzilla – Bug 15883
Now playing displays wrong info after Tiny SC favorites selection
Last modified: 2010-03-22 11:34:39 UTC
Create favorites from MSB.com source (internet radio ) and from TinySc SD card source. Select a MSB.com favorite, then switch to a favorite from tiny SC and the now playing screen remains that of the MSB.com favorite while playing the Tiny SC audio content.
Alan says he can reproduce this.
I'm finding it nearly (but not quite) impossible to reproduce this. I've seen it exactly once in about 30 or 40 tries, and unfortunately didn't get good debug in that instance. Currently I have 3 players synced and connected to tinySC. I'm switching back and forth between a mysb.com favorite and a local favorite and aside from the one event, the NP screen is updating correctly. I have seen situations where switching to a local favorite will take a seemingly impossibly long time to start audio, even when switching from one local track to a local favorite...15+ seconds sometimes. But when it does eventually play, the NP screen updates accordingly.
Alan, if you can reliably reproduce this, can you turn on squeezeplay.player logging to DEBUG and try again? I want to know if the issue is it not getting the playerstatus message or processing it wrongly. You pasted some error logs in campfire on 15 March (pasted below as well)-- the stack trace errors you see there I've not seen even once, even in the one case where I reproduced this issue. Though I should say that the error from NowPlaying identifies an improperly dereferenced Lua table. Not sure what's going on with the Player.lua error... Mar 15 18:26:03 squeezeplay: ERROR net.http - RequestHttp.lua:67 Response sink:...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1678: attempt to index local '_track' (a userdata value) Mar 15 18:26:03 squeezeplay: stack traceback: Mar 15 18:26:03 squeezeplay: ...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1678: in function '_extractTrackInfo' Mar 15 18:26:03 squeezeplay: ...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1618: in function 'showNowPlaying' Mar 15 18:26:03 squeezeplay: ...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1461: in function <...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1450> Mar 15 18:26:03 squeezeplay: (tail call): ? Mar 15 18:26:03 squeezeplay: ...sha Mar 15 18:26:04 squeezeplay: DEBUG squeezebox.player - Player.lua:231 stored playlist timestamp: nil Mar 15 18:26:04 squeezeplay: DEBUG squeezebox.player - Player.lua:232 new playlist timestamp: 1268673963.747 Mar 15 18:26:04 squeezeplay: DEBUG squeezebox.player - Player.lua:1180 Player:_process_playerstatus() Mar 15 18:26:04 squeezeplay: DEBUG squeezebox.player - Player.lua:382 LocalPlayer {Squeezebox Touch 1}@SlimServer {Squeezebox Touch 1 (SD)}:updatePlayerInfo connected=1 Mar 15 18:26:04 squeezeplay: DEBUG squeezebox.player - Player.lua:476 oldInfo.connected says: true self.info.connected says: true Mar 15 18:26:04 squeezeplay: ERROR net.http - RequestHttp.lua:67 Response sink:/usr/share/jive/jive/slim/Player.lua:271: attempt to index field '?' (a userdata value) Mar 15 18:26:04 squeezeplay: stack traceback: Mar 15 18:26:04 squeezeplay: /usr/share/jive/jive/slim/Player.lua:271: in function '_whatsPlaying' Mar 15 18:26:04 squeezeplay: /usr/share/jive/jive/slim/Player.lua:1230: in function '?' Mar 15 18:26:04 squeezeplay: /usr/share/jive/jive/slim/Player.lua:235: in function 'func' Mar 15 18:26:04 squeezeplay: /usr/share/jive/jive/net/Comet.lua:943: in function '_response' Mar 15 18:26:04 squeezeplay: /usr/share/jive/jive/net/Comet.lua:810: in function </usr/share/jive/jive/net/Comet.lua:801>/usr/share/jive/jive/s Mar 15 18:26:12 squeezeplay: WARN squeezeplay.ui.draw - jiveL_dispatch_event:789 error in event function: Mar 15 18:26:12 squeezeplay: ...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1678: attempt to index local '_track' (a userdata value) Mar 15 18:26:12 squeezeplay: stack traceback: Mar 15 18:26:12 squeezeplay: ...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1678: in function '_extractTrackInfo' Mar 15 18:26:12 squeezeplay: ...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1618: in function 'showNowPlaying' Mar 15 18:26:12 squeezeplay: ...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1461: in function <...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1450> Mar 15 18:26:12 squeezeplay: (tai Mar 15 18:26:14 squeezeplay: WARN squeezeplay.ui.draw - jiveL_dispatch_event:789 error in event function: Mar 15 18:26:14 squeezeplay: ...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1678: attempt to index local '_track' (a userdata value) Mar 15 18:26:14 squeezeplay: stack traceback: Mar 15 18:26:14 squeezeplay: ...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1678: in function '_extractTrackInfo' Mar 15 18:26:14 squeezeplay: ...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1618: in function 'showNowPlaying' Mar 15 18:26:14 squeezeplay: ...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1461: in function <...r/share/jive/applets/NowPlaying/NowPlayingApplet.lua:1450> Mar 15 18:26:14 squeezeplay: (tai
The relevant track entries are being returned as undef in playerstatus. This is because, somehow, the relevant contributor_track row(s) are being deleted and this causes Slim::Control::Queries::_getTagDataForTracks() to fail to find data for the track because of the dependent joins.
== Auto-comment from SVN commit #30380 to the slim repo by ayoung == == https://svn.slimdevices.com/slim?view=revision&revision=30380 == fixed bug 15883: Now playing displays wrong info after Tiny SC favorites selection Do not allow setRemoteMetadata to screw up DB records for local tracks.
== Auto-comment from SVN commit #30381 to the slim repo by ayoung == == https://svn.slimdevices.com/slim?view=revision&revision=30381 == bug 15883: Now playing displays wrong info after Tiny SC favorites selection Fix underlying problem with replacing a Track's set of contributor records with an empty set when just doing an attributes update.
== Auto-comment from SVN commit #30382 to the slim repo by ayoung == == https://svn.slimdevices.com/slim?view=revision&revision=30382 == bug 15883: Now playing displays wrong info after Tiny SC favorites selection Change warning to debug log.
fw 8661 Switching back and forth between favorites local TinySC and MSB.com and the now playing data is now properly updating to the selected source.