After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 665222 - System.ObjectDisposed exception in Hyena.Data.Sqlite code from System.Threading
System.ObjectDisposed exception in Hyena.Data.Sqlite code from System.Threading
Status: RESOLVED DUPLICATE of bug 629541
Product: banshee
Classification: Other
Component: general
2.2.1
Other Linux
: Normal normal
: ---
Assigned To: Banshee Maintainers
Banshee Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-11-30 16:52 UTC by Chow Loong Jin
Modified: 2013-02-23 14:52 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Chow Loong Jin 2011-11-30 16:52:58 UTC
Originally reported at:
  https://bugs.launchpad.net/bugs/879076

Sometimes, a song will be playing and banshee will simply crash - leaving no 'error/warning' message and you have to start banshee up again. 

Stacktrace:
ant@Master-Ant:~$ banshee
[Info 15:19:20.932] Running Banshee 2.2.1: [Ubuntu 11.10 (linux-gnu, x86_64) @ 2011-11-22 12:10:01 UTC]
[Info 15:19:22.348] Updating web proxy from GConf
[Info 15:19:22.468] All services are started 1.231323
[Info 15:19:24.045] nereid Client Started
[Info 15:19:24.173] GStreamer version 0.10.35.0, gapless: True, replaygain: False

Unhandled Exception: System.ObjectDisposedException: The object was used after being disposed.
at System.Threading.WaitHandle.CheckDisposed () <0x0004f>
at System.Threading.EventWaitHandle.Set () <0x0000f>
at (wrapper remoting-invoke-with-check) System.Threading.EventWaitHandle.Set () <0x00053>
at Hyena.Data.Sqlite.HyenaSqliteCommand.WaitForResult (Hyena.Data.Sqlite.HyenaSqliteConnection) <0x00067>
at Hyena.Data.Sqlite.HyenaSqliteConnection.Execute (Hyena.Data.Sqlite.HyenaSqliteCommand) <0x00037>
at Hyena.Data.Sqlite.HyenaSqliteConnection.Execute (string,object[]) <0x00053>
at Banshee.SmartPlaylist.SmartPlaylistSource.Refresh () <0x0025b>
at Banshee.SmartPlaylist.SmartPlaylistSource.RefreshAndReload () <0x0000f>
at Banshee.SmartPlaylist.SmartPlaylistSource.HandleTracksChanged (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x0008b>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x0005e>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at Banshee.Sources.PrimarySource/<OnTracksChanged>c__AnonStorey24.<>m__46 () <0x000a4>
at Hyena.ThreadAssist.SpawnFromMain (System.Threading.ThreadStart) <0x0002c>
at Banshee.Sources.PrimarySource.OnTracksChanged (Hyena.Query.QueryField[]) <0x0006f>
at Banshee.Sources.PrimarySource.NotifyTracksChanged (Hyena.Query.QueryField[]) <0x00018>
at Banshee.Collection.Database.DatabaseTrackInfo.Save (bool,Hyena.Query.QueryField[]) <0x00257>
at Banshee.Collection.Database.DatabaseTrackInfo.UpdateLastPlayed () <0x00073>
at Banshee.GStreamer.PlayerEngine.OnAboutToFinish (intptr) <0x0001a>
at (wrapper native-to-managed) Banshee.GStreamer.PlayerEngine.OnAboutToFinish (intptr) <0x0006f>

[ERROR] FATAL UNHANDLED EXCEPTION: System.ObjectDisposedException: The object was used after being disposed.
at System.Threading.WaitHandle.CheckDisposed () <0x0004f>
at System.Threading.EventWaitHandle.Set () <0x0000f>
at (wrapper remoting-invoke-with-check) System.Threading.EventWaitHandle.Set () <0x00053>
at Hyena.Data.Sqlite.HyenaSqliteCommand.WaitForResult (Hyena.Data.Sqlite.HyenaSqliteConnection) <0x00067>
at Hyena.Data.Sqlite.HyenaSqliteConnection.Execute (Hyena.Data.Sqlite.HyenaSqliteCommand) <0x00037>
at Hyena.Data.Sqlite.HyenaSqliteConnection.Execute (string,object[]) <0x00053>
at Banshee.SmartPlaylist.SmartPlaylistSource.Refresh () <0x0025b>
at Banshee.SmartPlaylist.SmartPlaylistSource.RefreshAndReload () <0x0000f>
at Banshee.SmartPlaylist.SmartPlaylistSource.HandleTracksChanged (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x0008b>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x0005e>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at (wrapper delegate-invoke) <Module>.invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs) <0x00095>
at Banshee.Sources.PrimarySource/<OnTracksChanged>c__AnonStorey24.<>m__46 () <0x000a4>
at Hyena.ThreadAssist.SpawnFromMain (System.Threading.ThreadStart) <0x0002c>
at Banshee.Sources.PrimarySource.OnTracksChanged (Hyena.Query.QueryField[]) <0x0006f>
at Banshee.Sources.PrimarySource.NotifyTracksChanged (Hyena.Query.QueryField[]) <0x00018>
at Banshee.Collection.Database.DatabaseTrackInfo.Save (bool,Hyena.Query.QueryField[]) <0x00257>
at Banshee.Collection.Database.DatabaseTrackInfo.UpdateLastPlayed () <0x00073>
at Banshee.GStreamer.PlayerEngine.OnAboutToFinish (intptr) <0x0001a>
at (wrapper native-to-managed) Banshee.GStreamer.PlayerEngine.OnAboutToFinish (intptr) <0x0006f>
Comment 1 lemen.14 2012-03-14 16:30:32 UTC
I can confirm this as well.

Here is a backtrace:


[Info  00:33:25.609] Running Banshee 2.2.1: [Gentoo/banshee/2.2.1 (linux-gnu, x86_64) @ 2011-12-08 12:35:07 Local time zone must be set--see zic manual page]
[Info  00:33:26.365] Updating web proxy from GConf
[Info  00:33:26.415] All services are started 0,606213
[Info  00:33:28.032] nereid Client Started
[Info  00:33:28.106] GStreamer version 0.10.35.0, gapless: True, replaygain: True

Unhandled Exception: System.ObjectDisposedException: The object was used after being disposed.
  at System.Threading.WaitHandle.CheckDisposed () [0x00000] in <filename unknown>:0 
  at System.Threading.EventWaitHandle.Reset () [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Threading.EventWaitHandle:Reset ()
  at Hyena.Data.Sqlite.HyenaSqliteCommand.Execute (Hyena.Data.Sqlite.HyenaSqliteConnection hconnection, Hyena.Data.Sqlite.Connection connection) [0x00000] in <filename unknown>:0 
  at Hyena.Data.Sqlite.HyenaSqliteConnection.ProcessQueue () [0x00000] in <filename unknown>:0 
  at System.Threading.Thread.StartInternal () [0x00000] in <filename unknown>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.ObjectDisposedException: The object was used after being disposed.
  at System.Threading.WaitHandle.CheckDisposed () [0x00000] in <filename unknown>:0 
  at System.Threading.EventWaitHandle.Reset () [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Threading.EventWaitHandle:Reset ()
  at Hyena.Data.Sqlite.HyenaSqliteCommand.Execute (Hyena.Data.Sqlite.HyenaSqliteConnection hconnection, Hyena.Data.Sqlite.Connection connection) [0x00000] in <filename unknown>:0 
  at Hyena.Data.Sqlite.HyenaSqliteConnection.ProcessQueue () [0x00000] in <filename unknown>:0 
  at System.Threading.Thread.StartInternal () [0x00000] in <filename unknown>:0
Comment 2 Ryan Armstrong 2013-01-27 13:25:49 UTC
I have run into the same problem. Here is a very similar stack trace to the above, only with some line references for the Hyena code. Note that this was captured on Banshee 2.2.1 on March 22 (similar timescale to the above), so it is possible it may have been corrected since then. I saved the log, but didn't get around to uploading until now. I'll keep an eye out for future occurrences.


[4 Warn  18:30:21.587] Executed in 1511ms DELETE FROM CoreSmartPlaylistEntries WHERE SmartPlaylistID = 338;
                  INSERT INTO CoreSmartPlaylistEntries
                    (EntryID, SmartPlaylistID, TrackID)
                    SELECT NULL, 338 as SmartPlaylistID, TrackId FROM CoreTracks,CoreArtists,CoreAlbums
                        WHERE CoreArtists.ArtistID = CoreTracks.ArtistID AND CoreAlbums.AlbumID = CoreTracks.AlbumID AND CoreTracks.PrimarySourceID = 1
                        AND ((CoreTracks.TrackID  IN (SELECT TrackID FROM CoreSmartPlaylistEntries WHERE SmartPlaylistID = 337)))  
[27 Debug 18:31:13.634] (libbanshee:player) [Gapless] Requesting next track
[27 Debug 18:31:14.606] Starting - Saving Metadata to File

Unhandled Exception: System.ObjectDisposedException: The object was used after being disposed.
  at System.Threading.WaitHandle.CheckDisposed () [0x00000] in <filename unknown>:0 
  at System.Threading.EventWaitHandle.Reset () [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Threading.EventWaitHandle:Reset ()
  at Hyena.Data.Sqlite.HyenaSqliteCommand.Execute (Hyena.Data.Sqlite.HyenaSqliteConnection hconnection, Hyena.Data.Sqlite.Connection connection) [0x001ad] in /build/buildd/banshee-2.2.1/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteCommand.cs:133 
  at Hyena.Data.Sqlite.HyenaSqliteConnection.ProcessQueue () [0x000ab] in /build/buildd/banshee-2.2.1/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteConnection.cs:445 
  at System.Threading.Thread.StartUnsafe () [0x00000] in <filename unknown>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.ObjectDisposedException: The object was used after being disposed.
  at System.Threading.WaitHandle.CheckDisposed () [0x00000] in <filename unknown>:0 
  at System.Threading.EventWaitHandle.Reset () [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.Threading.EventWaitHandle:Reset ()
  at Hyena.Data.Sqlite.HyenaSqliteCommand.Execute (Hyena.Data.Sqlite.HyenaSqliteConnection hconnection, Hyena.Data.Sqlite.Connection connection) [0x001ad] in /build/buildd/banshee-2.2.1/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteCommand.cs:133 
  at Hyena.Data.Sqlite.HyenaSqliteConnection.ProcessQueue () [0x000ab] in /build/buildd/banshee-2.2.1/src/Hyena/Hyena.Data.Sqlite/Hyena.Data.Sqlite/HyenaSqliteConnection.cs:445 
  at System.Threading.Thread.StartUnsafe () [0x00000] in <filename unknown>:0
Comment 3 Andrés G. Aragoneses (IRC: knocte) 2013-01-27 13:39:24 UTC
(In reply to comment #2)
> I have run into the same problem. Here is a very similar stack trace to the
> above, only with some line references for the Hyena code. Note that this was
> captured on Banshee 2.2.1 on March 22 (similar timescale to the above), so it
> is possible it may have been corrected since then.

Yes please, can you test with banshee 2.6.0? Thanks
Comment 4 Andrés G. Aragoneses (IRC: knocte) 2013-02-23 14:52:24 UTC
Thanks for the bug report. This particular bug has already been reported into our bug tracking system, but please feel free to report any further bugs you find.

*** This bug has been marked as a duplicate of bug 629541 ***