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 507885 - Crashes on song removal from library; single or multiple selections
Crashes on song removal from library; single or multiple selections
Status: RESOLVED FIXED
Product: banshee
Classification: Other
Component: User Interface
0.13.1
Other All
: Normal critical
: 2.x
Assigned To: Banshee Maintainers
Banshee Maintainers
Depends on:
Blocks:
 
 
Reported: 2008-01-07 18:16 UTC by 'Mash
Modified: 2008-02-11 02:01 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description 'Mash 2008-01-07 18:16:15 UTC
Steps to reproduce:
1. Start Banshee
2. Select song from library
3. Press DELETE key or right click and choose "Remove" from menu
4. Banshee crashes


Stack trace:
Exception in Gtk# callback delegate
  Note: Applications can use GLib.ExceptionManager.UnhandledException to handle the exception.
System.Reflection.AmbiguousMatchException: Ambiguous matching in method resolution
  at System.Reflection.Binder.FindMostDerivedMatch (System.Reflection.MethodBase[] match) [0x00000] 
  at System.MonoType.GetMethodImpl (System.String name, BindingFlags bindingAttr, System.Reflection.Binder binder, CallingConventions callConvention, System.Type[] types, System.Reflection.ParameterModifier[] modifiers) [0x00000] 
  at System.Type.GetMethod (System.String name, BindingFlags bindingAttr) [0x00000] 
  at Banshee.Base.ReflectionUtil.IsVirtualMethodImplemented (System.Type type, System.String methodName) [0x00000] in /tmp/buildd/banshee-0.13.1+dfsg/src/Core/Banshee.Base/Utilities.cs:162 
  at Banshee.Sources.Source.get_CanRemoveTracks () [0x00000] in /tmp/buildd/banshee-0.13.1+dfsg/src/Core/Banshee.Base/Source.cs:458 
  at Banshee.PlayerUI.RemoveSongs (Boolean deleteFromFileSystem) [0x00051] in /tmp/buildd/banshee-0.13.1+dfsg/src/Core/Banshee/PlayerInterface.cs:1880 
  at Banshee.PlayerUI.OnRemoveSongsAction (System.Object o, System.EventArgs args) [0x00000] in /tmp/buildd/banshee-0.13.1+dfsg/src/Core/Banshee/PlayerInterface.cs:2265 
  at GLib.Signal.voidObjectCallback (IntPtr handle, IntPtr gch) [0x00000] 
   at GLib.ExceptionManager.RaiseUnhandledException(System.Exception e, Boolean is_terminal)
   at GLib.Signal.voidObjectCallback(IntPtr handle, IntPtr gch)
   at GLib.Signal.voidObjectCallback(IntPtr , IntPtr )
   at Gtk.Application.gtk_main()
   at Gtk.Application.gtk_main()
   at Gtk.Application.Run()
   at Gnome.Program.Run()
   at Banshee.BansheeEntry.Startup(System.String[] args) in /tmp/buildd/banshee-0.13.1+dfsg/src/Core/Banshee/Main.cs:line 118
   at Banshee.Gui.CleanRoomStartup.Startup(Banshee.Gui.StartupInvocationHandler startup, System.String[] args) in /tmp/buildd/banshee-0.13.1+dfsg/src/Core/Banshee.Base/Gui/CleanRoomStartup.cs:line 54
   at Banshee.BansheeEntry.Main(System.String[] args) in /tmp/buildd/banshee-0.13.1+dfsg/src/Core/Banshee/Main.cs:line 43

Program exited with code 01.


Other information:
I am not able to remove a single song from library. I do not have any device (ipod) connected. I have less then 30 songs in my playlist. Checked and every song can be played. 

This bug may be related to Debain apt-get upgrade this morning*

I have tried:
. "Delete from Drive" rather then just remove from library - crashes
.  Importing new music and trying to remove a newly imported song - crashes


*dpkg log
2008-01-07 12:59:21 upgrade e2fslibs 1.40.2-1+lenny1 1.40.3-1
2008-01-07 12:59:24 upgrade e2fsprogs 1.40.2-1+lenny1 1.40.3-1
2008-01-07 12:59:26 upgrade hostname 2.94 2.95
2008-01-07 12:59:28 upgrade login 1:4.0.18.1-11 1:4.0.18.2-1
2008-01-07 12:59:31 upgrade libblkid1 1.40.2-1+lenny1 1.40.3-1
2008-01-07 12:59:32 upgrade libcomerr2 1.40.2-1+lenny1 1.40.3-1
2008-01-07 12:59:34 upgrade libss2 1.40.2-1+lenny1 1.40.3-1
2008-01-07 12:59:35 upgrade libuuid1 1.40.2-1+lenny1 1.40.3-1
2008-01-07 12:59:37 upgrade libtasn1-3 1.1-1 1.2-1
2008-01-07 12:59:37 upgrade passwd 1:4.0.18.1-11 1:4.0.18.2-1
2008-01-07 12:59:38 upgrade libfeedparser-ruby1.8 0.5-1 0.5-2
2008-01-07 12:59:38 upgrade feed2imap 0.9.2-1 0.9.2-2
2008-01-07 12:59:38 upgrade initramfs-tools 0.91c 0.91d
2008-01-07 12:59:39 upgrade mono-runtime 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:39 upgrade mono-gac 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:39 upgrade libmono-corlib2.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:39 upgrade libmono-security2.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:40 upgrade libmono0 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:40 upgrade libmono-system2.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:40 upgrade libmono-system1.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:40 upgrade libmono-data-tds2.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:40 upgrade libmono-system-data2.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:41 upgrade libmono-system-web2.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:41 upgrade libmono-security1.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:41 upgrade libmono-data-tds1.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:41 upgrade libmono-system-data1.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:41 upgrade libmono-system-web1.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:42 upgrade libmono-corlib1.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:42 upgrade mono-jit 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:42 upgrade mono-common 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:42 upgrade libmono-cairo1.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:42 upgrade libmono-cairo2.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:43 upgrade libmono-sharpzip0.84-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:43 upgrade libmono-sharpzip2.84-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:43 upgrade libmono-sqlite2.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:43 upgrade libmono1.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:43 upgrade libmono2.0-cil 1.2.5.1-1+lenny1 1.2.6+dfsg-5
2008-01-07 12:59:44 upgrade libogg0 1.1.3-2 1.1.3-3
2008-01-07 12:59:44 upgrade libvorbis0a 1.2.0.dfsg-2 1.2.0.dfsg-3
2008-01-07 12:59:44 upgrade libvorbisenc2 1.2.0.dfsg-2 1.2.0.dfsg-3
2008-01-07 12:59:45 upgrade libvorbisfile3 1.2.0.dfsg-2 1.2.0.dfsg-3
2008-01-07 13:04:59 upgrade mutt 1.5.17-1 1.5.17-2
Comment 1 phoenix0down 2008-01-14 14:55:44 UTC
I also have the same problem. 

When right-clicking to remove selected songs, the following appears in the terminal:

Exception in Gtk# callback delegate
  Note: Applications can use GLib.ExceptionManager.UnhandledException to handle the exception.
Mono.Data.SqliteClient.SqliteSyntaxException: Expression tree is too large (maximum depth 1000)
  at Mono.Data.SqliteClient.SqliteCommand.GetNextStatement (IntPtr pzStart, System.IntPtr& pzTail, System.IntPtr& pStmt) [0x00000] 
  at Mono.Data.SqliteClient.SqliteCommand.ExecuteReader (CommandBehavior behavior, Boolean want_results, System.Int32& rows_affected) [0x00000] 
  at Mono.Data.SqliteClient.SqliteCommand.ExecuteNonQuery () [0x00000] 
  at Banshee.Database.QueuedSqliteCommand.Execute () [0x00000] 

   at GLib.ExceptionManager.RaiseUnhandledException ()
   at GLib.Signal.voidObjectCallback ()
   at GLib.Signal.voidObjectCallback ()
   at Gtk.Application.gtk_main ()
   at Gtk.Application.gtk_main ()
   at Gtk.Application.Run ()
   at Gnome.Program.Run ()
   at Banshee.BansheeEntry.Startup ()
   at System.MulticastDelegate.invoke_void_string[] ()
   at Banshee.Gui.CleanRoomStartup.Startup ()
   at Banshee.BansheeEntry.Main ()


I don't know if this has any significance, but the following appears on opening the program via the terminal:


Debug: [14/01/2008 22:44:47] (Loading audio profiles) - /usr/share/banshee/audio-profiles
Performing compatibility update on playlist 'New Playlist 1'
Debug: [14/01/2008 22:44:48] (Default player engine) - GStreamer 0.10
Debug: [14/01/2008 22:44:48] (Audio CD Core Initialised) - 
Debug: [14/01/2008 22:44:48] (Testing device for DAP support) - /org/freedesktop/Hal/devices/volume_uuid_46B7_CA47
Debug: [14/01/2008 22:44:49] (DAP has not been added) - /org/freedesktop/Hal/devices/volume_uuid_46B7_CA47
Debug: [14/01/2008 22:44:49] (Testing device for DAP support) - /org/freedesktop/Hal/devices/volume_uuid_0094786494785E5A
Debug: [14/01/2008 22:44:49] (DAP has not been added) - /org/freedesktop/Hal/devices/volume_uuid_0094786494785E5A
Debug: [14/01/2008 22:44:49] (Testing device for DAP support) - /org/freedesktop/Hal/devices/volume_uuid_07D6_0A17
Debug: [14/01/2008 22:44:49] (DAP has not been added) - /org/freedesktop/Hal/devices/volume_uuid_07D6_0A17
Warning: [14/01/2008 22:44:49] (Power Management Call Failed) - Cannot find GNOME Power Manager: Name org.gnome.PowerManager has no owner
Debug: [14/01/2008 22:44:49] (Enabled multimedia keys support) - Using org.gnome.SettingsDaemon
Comment 2 Jason Switzer 2008-02-06 04:19:49 UTC
This is a dup of bug #469393.
Comment 3 Andrew Conkling 2008-02-07 22:20:15 UTC
(In reply to comment #1)
> I also have the same problem. 
> 
> When right-clicking to remove selected songs, the following appears in the
> terminal:
> 
> Exception in Gtk# callback delegate
>   Note: Applications can use GLib.ExceptionManager.UnhandledException to handle
> the exception.
> Mono.Data.SqliteClient.SqliteSyntaxException: Expression tree is too large
> (maximum depth 1000)

(In reply to comment #2)
> This is a dup of bug #469393.

Just comment #1 appears to be referring to that bug.

The original backtrace appears to be different; this bug can happen when removing one track.
Comment 4 Andrew Conkling 2008-02-08 03:23:26 UTC
I can't reproduce this; can anyone supply some steps that trigger this to happen? For example, does it only happen when removing something in a certain playlist? Or after playing something?
Comment 5 phoenix0down 2008-02-10 08:22:34 UTC
Yes. It appears the only way I can produce this is by deleting one thousand or so tracks at once. 
Comment 6 Andrew Conkling 2008-02-10 16:30:09 UTC
'Mash, how about you?
Comment 7 Andrew Conkling 2008-02-10 16:32:41 UTC
(In reply to comment #5)
> Yes. It appears the only way I can produce this is by deleting one thousand or
> so tracks at once. 

As for you phoenix, bug #469393 is the one you're after. They are similar, but actually have different crashes.
Comment 8 'Mash 2008-02-10 18:48:28 UTC
(In reply to comment #6)
> 'Mash, how about you?
> 

It was when I was trying to delete a single song. No playlist or multiple selections. Simply select a track and delete and it crashes.

I am now using the 0.13.2+dfsg-2+b1 (debian/sid package) and am no longer having this problem.
Comment 9 Andrew Conkling 2008-02-11 02:01:13 UTC
(In reply to comment #8)
> I am now using the 0.13.2+dfsg-2+b1 (debian/sid package) and am no longer
> having this problem.

Awesome, thanks for reporting back. If anyone else finds this bug in 0.13.2 or newer, please reopen it. Specifically stacktraces that start with: 

Exception in Gtk# callback delegate
  Note: Applications can use GLib.ExceptionManager.UnhandledException to handle
the exception.
System.Reflection.AmbiguousMatchException: Ambiguous matching in method
resolution
  at System.Reflection.Binder.FindMostDerivedMatch

Cheers.