GNOME Bugzilla – Bug 349586
Error on audioscrobbler reporting, sometimes succeeds.
Last modified: 2008-02-25 17:50:12 UTC
Below is a console log of my banshee starting up, playing a song and then trying to report. Usually it fails to report, however.. once in a while it will report succesfully. =-=-=-=-=-=-=-=-=-= Warning: [8/1/2006 2:59:16 PM] (Cannot connect to NetworkManager) - An available , working network connection will be assumed Debug: [8/1/2006 2:59:16 PM] (Default player engine) - GStreamer 0.10 Debug: [8/1/2006 2:59:16 PM] (Audio CD Core Initialized) - Audioscrobbler starting protocol engine (Banshee:12208): GdkPixbuf-WARNING **: GdkPixbufLoader finalized without calling gdk_pixbuf_loader_close() - this is not allowed. You must explicitly end the da ta stream to the loader before dropping the last reference. (Banshee:12208): GdkPixbuf-WARNING **: GdkPixbufLoader finalized without calling gdk_pixbuf_loader_close() - this is not allowed. You must explicitly end the da ta stream to the loader before dropping the last reference. Scanning library for tracks to update Done scanning library Processing track queue for pending queries Setting MusicBrainz proxy to www.musicbrainz.org:80 Done processing track queue Failed to get the response: System.Net.WebException: Error getting response stream (ReadDone2): ReceiveFailure ---> System.Exception: at System.Net.WebConnection.HandleError () at System.Net.WebConnection.ReadDone () at System.MulticastDelegate.invoke_void_IAsyncResult () at System.Net.Sockets.Socket+SocketAsyncResult.Complete () at System.Net.Sockets.Socket+Worker.Receive () at System.MulticastDelegate.invoke_void () in <0x000ad> System.Net.WebConnection:HandleError (WebExceptionStatus st, System.Exception e, System.String where)--- End of inner exception stack trace --- in <0x00158> System.Net.HttpWebRequest:EndGetResponse (IAsyncResult asyncResult) in <0x0006b> Banshee.Plugins.Audioscrobbler.Engine:TransmitGetResponse (IAsyncResult ar) Failed to get the response: System.Net.WebException: Error getting response stream (ReadDone2): ReceiveFailure ---> System.Exception: at System.Net.WebConnection.HandleError () at System.Net.WebConnection.ReadDone () at System.MulticastDelegate.invoke_void_IAsyncResult () at System.Net.Sockets.Socket+SocketAsyncResult.Complete () at System.Net.Sockets.Socket+Worker.Receive () at System.MulticastDelegate.invoke_void () in <0x000ad> System.Net.WebConnection:HandleError (WebExceptionStatus st, System.Exception e, System.String where)--- End of inner exception stack trace --- in <0x00158> System.Net.HttpWebRequest:EndGetResponse (IAsyncResult asyncResult) in <0x0006b> Banshee.Plugins.Audioscrobbler.Engine:TransmitGetResponse (IAsyncResult ar) Warning: [8/1/2006 3:06:40 PM] (Audioscrobbler upload failed) - Plugin bug: Not all request variables are set Information: [8/1/2006 3:06:42 PM] (Audioscrobbler upload succeeded) - =-=-=-=-=-=-=-=-=-=
I just noticed Banshee 0.11.1 hasn't been scrobbling for me in a while, even though the plugin is enabled and correctly configured. How did you get this output? And can you test on 0.11.x to see if this is still a problem?
I can confirm this behavior on 0.11.3. Also, perhaps a useful bug report here: https://launchpad.net/ubuntu/+source/banshee/+bug/62637 From the report: "This definitely only happens when the plugin has just been enabled. To reproduce, open the plugins window and deactivate the audioscrobber plugin. Then reactivate it and play some tracks, only the one you double click will be submitted."
Setting to 0.11.3 based on report above.
(In reply to comment #3) > Setting to 0.11.3 based on report above. I just upgraded; you can set this to 0.11.4 now. (I wish I could, sorry!)
Tentatively, I figured this out. It looks like the problem is that if NetworkManager is not running or is not able to connect (e.g. because of a static IP configuration), then Banshee will assume there is no network connection. This is a problem IMO. Can anyone else confirm this? (For what it's worth, I tested this in Banshee SVN.)
(In reply to comment #5) > then Banshee will assume there is no network > connection. This is a problem IMO. From the source code of NetworkDetect.cs: try { ConnectToNetworkManager(); } catch(Exception) { nm_manager = null; LogCore.Instance.PushWarning( Catalog.GetString("Cannot connect to NetworkManager"), Catalog.GetString("An available, working network connection will be assumed"), false); } And somewhat lower: public bool Connected { get { return nm_manager == null ? true : current_state == State.Connected; } } Hence, I don't think this is the case.
(In reply to comment #6) > I don't think this is the case. Interesting. That made all the difference for me. Anything I can test when running without network-manager to see what the problem is?
(In reply to comment #6) > (In reply to comment #5) > > then Banshee will assume there is no network > > connection. This is a problem IMO. > <SNIP> > Hence, I don't think this is the case. Another case in point (again in SVN): If I try to load the Radio, I get "Failed to load radio stations: There is no available network connection". Same configuration as before. Maybe the real bug is that block of code not doing what it should....
Andrew: are you saying that you have NetworkManager running, but it is not managing your connection? I've seen someone with this problem before - they had installed NM, but used the standard network configuration tool in Ubuntu to actually set their static network config. Thus, NM was reporting no connection.
Hey Aaron, thanks for your reply. (In reply to comment #9) > Andrew: are you saying that you have NetworkManager running, but it is not > managing your connection? > > I've seen someone with this problem before - they had installed NM, but used > the standard network configuration tool in Ubuntu to actually set their static > network config. Thus, NM was reporting no connection. Actually, it doesn't matter. Running or not, Banshee will report no network connection. Is there any way I can debug that block of code to see if it's being set incorrectly for me?
(In reply to comment #8) > Maybe the real bug is that block of code not doing what it should.... This bug also prevents the loading of cover art (at least for my files tagged with MusicBrainz).
(In reply to comment #11) > (In reply to comment #8) > > Maybe the real bug is that block of code not doing what it should.... > > This bug also prevents the loading of cover art (at least for my files tagged > with MusicBrainz). I can confirm that. I have banshee 0.12 from debian/experimental and network manager installed but NM is used only for managing wireless connection (used outdoors). When I use banshee indoor (wired connection, NM reports that there is no connection) audioscobbler doesn't work, getting tags from musicbrainz doesn't work, radio doesn't work. When I use outdoor (wireless connectio, NM reports that there is connection) everything works. I cannot use NM indoor because it doesn't support static address.
That's not a banshee bug then, as we do everything correctly, we're just getting wrong information from network-manager. The real bug in that case is network-manager not supporting static addresses.
(In reply to comment #13) > That's not a banshee bug then, as we do everything correctly, we're just > getting wrong information from network-manager. The real bug in that case is > network-manager not supporting static addresses. ...or no information at all. The real problem is when network-manager, for one reason or another, is not running at all: (In reply to comment #5) > Tentatively, I figured this out. It looks like the problem is that if > NetworkManager is not running or is not able to connect (e.g. because of a > static IP configuration), then Banshee will assume there is no network > connection. This is a problem IMO.
Ubuntu just repackaged network-manager with the following patch: * 21_manual_means_always_online.diff: The previous version of this patch (ubuntu5) made a change to nm-applet that would assume the state was disconnected if the device list was empty. This didn't work since the device list is always empty on start because the status is obtained first. This was guarding against having the connected state with no devices, which broke later assertions. Change the patch to correct those assertions instead; a connected state with no active device will now display the wired icon with a "Manual network configuration" tooltip. That's version 0.6.4-6ubuntu7. This should fix the "wrong information" thing. In the case of no network-manager running, it should degrade to assuming that there is a connection. Hence I assume this is fixed. Can ubuntu users try this out (with feisty)? Andrew: Can you still reproduce this with no network-manager running?
(In reply to comment #15) > That's version 0.6.4-6ubuntu7. This should fix the "wrong information" thing. > In the case of no network-manager running, it should degrade to assuming that > there is a connection. Hence I assume this is fixed. Can ubuntu users try this > out (with feisty)? Andrew: Can you still reproduce this with no network-manager > running? No, it seems fixed now. You can close this, I'd say.
I don't want to open a separate report as it's possibly related. When starting the debug log ends at: Debug: [2007-09-27 18:10:20] (Audioscrobbler starting protocol engine) - Building initial DAAP database from local library... Starting DAAP Server Then nothing else mentions Audioscrobbler. If I disable and reenable it, it says: Debug: [09/27/2007 18:12:40] (Audioscrobbler stopping protocol engine) - Debug: [09/27/2007 18:12:41] (Audioscrobbler starting protocol engine) - And nothing happens. It's not NetworkManager-related as it's both running and connected.
Also: [patrys@meaw life]$ wc -l /home/users/patrys/.config/banshee/plugins/AudioscrobblerQueue.xml 1843 /home/users/patrys/.config/banshee/plugins/AudioscrobblerQueue.xml (sorry for doubleposting)
*** Bug 502375 has been marked as a duplicate of this bug. ***
*** Bug 518489 has been marked as a duplicate of this bug. ***