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 580044 - LINQ crash when refreshing metadata from 1.4.3 database
LINQ crash when refreshing metadata from 1.4.3 database
Status: RESOLVED FIXED
Product: banshee
Classification: Other
Component: Importing
git master
Other Linux
: Urgent blocker
: 1.5.0
Assigned To: Banshee Maintainers
Banshee Maintainers
: 581010 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2009-04-23 21:57 UTC by Aaron Bockover
Modified: 2009-05-02 01:01 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Aaron Bockover 2009-04-23 21:57:46 UTC
I reliably get this crash when I "make run" from a fresh build of master against a clean database created with 1.4.3.

** (Nereid:17118): WARNING **: Missing method Hyena.Jobs.Job.get_Resources in assembly /home/aaron/git/banshee/bin/Hyena.dll token 6000255
Exception in Gtk# callback delegate
  Note: Applications can use GLib.ExceptionManager.UnhandledException to handle the exception.
System.TypeLoadException: A type load exception has occurred.
  at System.Linq.Enumerable+<CreateWhereIterator>c__Iterator29`1[Hyena.Jobs.Job].MoveNext () [0x00059] in /usr/src/packages/BUILD/mono-2.0.1/mcs/class/System.Core/System.Linq/Enumerable.cs:2305 
  at System.Linq.Enumerable.Any[Job] (IEnumerable`1 source) [0x0000d] in /usr/src/packages/BUILD/mono-2.0.1/mcs/class/System.Core/System.Linq/Enumerable.cs:120 
  at Hyena.Jobs.Scheduler.CanStartJob (Hyena.Jobs.Job job, Boolean pausedJob) [0x0005e] in /home/aaron/git/banshee/src/Libraries/Hyena/Hyena.Jobs/Scheduler.cs:193 
  at Hyena.Jobs.Scheduler.CanStart (Hyena.Jobs.Job job) [0x00000] in /home/aaron/git/banshee/src/Libraries/Hyena/Hyena.Jobs/Scheduler.cs:175 
  at Hyena.Jobs.Scheduler.Add (Hyena.Jobs.Job job) [0x00079] in /home/aaron/git/banshee/src/Libraries/Hyena/Hyena.Jobs/Scheduler.cs:81 
  at Banshee.ServiceStack.DbIteratorJob.Register () [0x00000] in /home/aaron/git/banshee/src/Core/Banshee.Services/Banshee.ServiceStack/DbIteratorJob.cs:74 
  at Banshee.Metadata.SaveTrackMetadataService.Save () [0x000be] in /home/aaron/git/banshee/src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:103 
  at Banshee.Metadata.SaveTrackMetadataService.<SaveTrackMetadataService>m__23 () [0x00047] in /home/aaron/git/banshee/src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:68 
  at Banshee.Gui.GtkBaseClient+<RunTimeout>c__AnonStorey28.<>m__109 () [0x00000] in /home/aaron/git/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:237 
  at GLib.Timeout+TimeoutProxy.Handler () [0x0000c] in /usr/src/packages/BUILD/gtk-sharp-2.12.6/glib/Timeout.cs:46 
   at GLib.ExceptionManager.RaiseUnhandledException(System.Exception e, Boolean is_terminal) in /usr/src/packages/BUILD/gtk-sharp-2.12.6/glib/ExceptionManager.cs:line 58
   at GLib.Timeout+TimeoutProxy.Handler() in /usr/src/packages/BUILD/gtk-sharp-2.12.6/glib/Timeout.cs:line 51
   at Gtk.Application.gtk_main()
   at Gtk.Application.Run() in /usr/src/packages/BUILD/gtk-sharp-2.12.6/gtk/generated/AboutDialog.cs:line 1
   at Banshee.Gui.GtkBaseClient.Run() in /home/aaron/git/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:line 155
   at Banshee.Gui.GtkBaseClient.Startup() in /home/aaron/git/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:line 78
   at Hyena.Gui.CleanRoomStartup.Startup(Hyena.Gui.StartupInvocationHandler startup) in /home/aaron/git/banshee/src/Libraries/Hyena.Gui/Hyena.Gui/CleanRoomStartup.cs:line 54
   at Banshee.Gui.GtkBaseClient.Startup() in /home/aaron/git/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:line 73
   at Banshee.Gui.GtkBaseClient.Startup(System.String[] args) in /home/aaron/git/banshee/src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:line 63
   at Nereid.Client.Main(System.String[] args) in /home/aaron/git/banshee/src/Clients/Nereid/Nereid/Client.cs:line 48
Comment 1 Aaron Bockover 2009-04-23 23:03:32 UTC
This is Banshee running on Mono 2.0.1. We must make sure that everything works on 2.0.1 as a minimum Mono version for the next year most likely.

All testing and development should be done against that version.
Comment 2 Alexander Kojevnikov 2009-04-24 01:33:16 UTC
The same exception is thrown on `make test` when running under Mono 2.0.1
Comment 3 Alexander Kojevnikov 2009-05-01 07:05:27 UTC
Another way to reproduce it is to "Edit Track Information" and press OK without editing anything. I always see the exception a couple of seconds later.

Sometimes the exception is followed by a silent crash. In this case the stack trace is slightly different:

** (Nereid:9771): WARNING **: Missing method Hyena.Jobs.Job.get_Resources in assembly /home/alex/Projects/banshee/bin/Hyena.dll token 60002dd

Unhandled Exception: System.TypeLoadException: A type load exception has occurred.
  at System.Linq.Enumerable+<CreateWhereIterator>c__Iterator29`1[Hyena.Jobs.Job].MoveNext () [0x00000] 
  at Hyena.Jobs.JobExtensions.ForEach[Job] (IEnumerable`1 source, System.Action`1 func) [0x0001a] in /home/alex/Projects/banshee/src/Libraries/Hyena/Hyena.Jobs/JobExtensions.cs:54 
  at Hyena.Jobs.Scheduler.StartJob (Hyena.Jobs.Job job) [0x00000] in /home/alex/Projects/banshee/src/Libraries/Hyena/Hyena.Jobs/Scheduler.cs:201 
  at Hyena.Jobs.Scheduler.Add (Hyena.Jobs.Job job) [0x00085] in /home/alex/Projects/banshee/src/Libraries/Hyena/Hyena.Jobs/Scheduler.cs:82 
  at Banshee.ServiceStack.DbIteratorJob.Register () [0x00000] in /home/alex/Projects/banshee/src/Core/Banshee.Services/Banshee.ServiceStack/DbIteratorJob.cs:74 
  at Banshee.Metadata.SaveTrackMetadataService.Save () [0x000be] in /home/alex/Projects/banshee/src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:103 
  at Banshee.Metadata.SaveTrackMetadataService.OnTracksChanged (Banshee.Sources.Source sender, Banshee.Sources.TrackEventArgs args) [0x00000] in /home/alex/Projects/banshee/src/Core/Banshee.Services/Banshee.Metadata/SaveTrackMetadataService.cs:108 
  at (wrapper delegate-invoke) TrackEventHandler:invoke_void__this___Source_TrackEventArgs (Banshee.Sources.Source,Banshee.Sources.TrackEventArgs)
  at Banshee.Sources.PrimarySource+<OnTracksChanged>c__AnonStorey28.<>m__15 () [0x0004d] in /home/alex/Projects/banshee/src/Core/Banshee.Services/Banshee.Sources/PrimarySource.cs:412 
~/Projects/banshee(master)$
Comment 4 Bertrand Lorentz 2009-05-01 16:22:48 UTC
*** Bug 581010 has been marked as a duplicate of this bug. ***
Comment 5 Gabriel Burt 2009-05-01 16:40:07 UTC
Ok, for some reason Mono 2.0.1 really didn't like that Resources property.  Changing it to a field 'fixes' the problem.  Hyena unit tests should also now pass (there was a bug w/ the test jobs not calling OnFinished () there that caused them to never finish).
Comment 6 Alexander Kojevnikov 2009-05-02 01:01:32 UTC
Confirming, thanks!