GNOME Bugzilla – Bug 452494
evolution-sharp removed API, causing Beagle to crash
Last modified: 2007-08-26 22:06:36 UTC
Steps to reproduce: 1. $ beagled --fg --debug 2. 3. Stack trace: $ beagled --fg --debug ***MEMORY-WARNING***: /usr/lib/beagle/BeagleDaemon.exe[4560]: GSlice: g_thread_init() must be called before all other GLib functions; memory corruption due to late invocation of g_thread_init() has been detected; this program is likely to crash, leak or unexpectedly abort soon... Always: Starting Beagle Daemon (version 0.2.17) Always: Running on Mono 1.2.4 Always: Using sqlite version 3 Always: Command Line: /usr/lib/beagle/BeagleDaemon.exe --fg --debug Warn: Extended attributes are not supported on this filesystem. Performance will suffer as a result. Debug: Established a connection to the X server Debug: Reniced process to 7 Debug: Loading Beagle.Util.Conf+IndexingConfig from indexing.xml Debug: Loading Beagle.Util.Conf+DaemonConfig from daemon.xml Debug: Loading Beagle.Util.Conf+SearchingConfig from searching.xml Debug: Starting main loop Debug: Beginning main loop Debug: Starting messaging server Debug: Starting QueryDriver Debug: Found index helper at /usr/lib/beagle/beagled-index-helper Debug: Found 2 backends in /usr/lib/beagle/Backends/EvolutionBackends.dll Debug: KMail folders not found. Will keep trying Debug: Starting Inotify FSQ file event backend Debug: KonqCacheDir: /var/tmp/kdecache-sangu/http Debug: Found 16 backends in /usr/lib/beagle/BeagleDaemonLib.dll Debug: Reading mapping from filters Debug: Loading system static indexes. Debug: Version mismatch in /var/cache/beagle/indexes/applications Debug: Index has version 13.0, expected 17.-1 Warn: Unable to create read-only index (likely due to index version mismatch): /var/cache/beagle/indexes/applications Debug: Version mismatch in /var/cache/beagle/indexes/documentation Debug: Index has version 13.0, expected 17.-1 Warn: Unable to create read-only index (likely due to index version mismatch): /var/cache/beagle/indexes/documentation Debug: Found 0 system-wide indexes. Debug: Loading user-configured static indexes. Debug: Found 0 user-configured static indexes.. Debug: Waiting 60 seconds before starting queryables Debug: Starting Scheduler thread Debug: Starting Inotify threads Debug: Daemon initialization finished after .64s Debug: Memory usage: VmSize=40.8 MB, VmRSS=16.6 MB, GC.GetTotalMemory=1474560 Debug: Starting queryables Debug: Starting backend: 'EvolutionMail' Debug: Starting backend: 'EvolutionDataServer' Debug: Starting backend: 'KMail' Debug: Starting backend: 'Files' Debug: Starting KMail backend Debug: Adding root: /home/sangu Debug: KMail directories (local mail) /home/sangu/.kde/share/apps/kmail/dimap not found, will repoll. Debug: Starting Evolution mail backend Debug: Starting mail crawl Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox Debug: Opening mbox Inbox Debug: Will index mbox /home/sangu/.evolution/mail/local/Drafts Debug: Will index mbox /home/sangu/.evolution/mail/local/Sent Debug: Will index mbox /home/sangu/.evolution/mail/local/Outbox Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/홈쇼핑 Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/홈쇼핑.sbd/dell Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/홈쇼핑.sbd/KT청구서 Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/hellocity.sbd/FedoraI18n Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/hellocity.sbd/FedoraConfig Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/hellocity.sbd/FreedesktopBugzilla Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/hellocity.sbd/fedora-trans-list Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/hellocity.sbd/RedHatBugzilla Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/hellocity.sbd/FedoraTransKo Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/hellocity.sbd/FedoraSelinux Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/hellocity.sbd/GnomeKrHacker DebugDebugDebug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/FedoraArt : Inbox: Finished indexing 0 messages Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/cairo Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/gtk Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/help-gnu-emacs Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/emacs-pretest-bug Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/emacs-unicode Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/fedora-kernel-list Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/Fedora Debug: Inbox: indexed 0 messages Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/xorg Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/EvolutionHackers Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/dbus Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/fedora-extras Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/Compiz Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/gtk-app-devel Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/OpenOfficeIssueTracker Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/gmail.sbd/HAL Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/kornet.sbd/GnomeBugzilla Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/kornet.sbd/KernelBug Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/kornet.sbd/shrike-list Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/kornet.sbd/fedora-devel-list Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/kornet.sbd/KT 소식지 Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/kornet.sbd/fedora-tools-list Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/kornet.sbd/fedora-test-list Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/kornet.sbd/emacs-devel Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/kornet.sbd/IBM developerWorks Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/kornet.sbd/XimianBugzilla Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/yahoo.sbd/devel-announce-list Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/yahoo.sbd/nautilus-list Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/yahoo.sbd/desktop-devel-list Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/yahoo.sbd/HangulHacker Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/yahoo.sbd/fedora-desktop-list Debug: Will index mbox /home/sangu/.evolution/mail/local/Inbox.sbd/yahoo.sbd/gtk-devel-list Debug: Mail crawl finished Debug: Evolution mail driver worker thread done in .32s Debug: Loaded 35496 records from /home/sangu/.beagle/Indexes/FileSystemIndex/FileAttributesStore.db in 0.773s Debug: Done starting FileSystemQueryable Debug: Starting backend: 'GaimLog' Debug: Starting Gaim log backend Debug: Setting up inotify watches on gaim log directories Debug: Gaim log backend worker thread done in .03s Debug: Starting backend: 'IndexingService' Debug: Setting up an initial crawl of the IndexingService directory Debug: Starting backend: 'Tomboy' Debug: Tomboy backend started Debug: Starting backend: 'Labyrinth' Debug: Starting backend: 'Blam' Debug: Starting backend: 'Liferea' Debug: Starting backend: 'Akregator' Debug: Starting backend: 'KonquerorHistory' Debug: Starting backend: 'KonqBookmark' Debug: Starting backend: 'KNotes' Debug: Starting backend: 'KOrganizer' Debug: Starting backend: 'KAddressBook' Debug: Starting backend: 'Kopete' Debug: Starting backend: 'Konversation' ** (/usr/lib/beagle/BeagleDaemon.exe:4560): WARNING **: Missing method Evolution.CalUtil::FreeGlueCompGLibSList(intptr) in assembly /usr/lib/mono/gac/evolution-sharp/2.0.0.0__457eed85bd9370df/evolution-sharp.dll, referenced in assembly /usr/lib/beagle/Backends/EvolutionBackends.dll Error: Unhandled exception thrown. Exiting immediately. System.MissingMethodException: Method not found: 'Evolution.CalUtil.FreeGlueCompGLibSList'. in (unmanaged) 0x812e8f5 at <>c__CompilerGenerated1.<>c__AnonymousMethod2 () <0x00015> at (wrapper delegate-invoke) System.MulticastDelegate.invoke_bool () <0x0002e> at IdleProxy.Handler () <0x0002a> at (wrapper native-to-managed) IdleProxy.Handler () <0x00047> in (unmanaged) 0x17d520 at (wrapper managed-to-native) GLib.MainLoop.g_main_loop_run (intptr) <0x00004> at GLib.MainLoop.Run () <0x0000d> at Beagle.Daemon.BeagleDaemon.DoMain (string[]) <0x00b7b> at Beagle.Daemon.BeagleDaemon.Main (string[]) <0x00014> Other information: $ beagled ***MEMORY-WARNING***: /usr/lib/beagle/BeagleDaemon.exe[4802]: GSlice: g_thread_init() must be called before all other GLib functions; memory corruption due to late invocation of g_thread_init() has been detected; this program is likely to crash, leak or unexpectedly abort soon... glib2-2.13.6-1.fc8 gtk2-2.11.4-1.fc8 mono-core-1.2.4-1.fc8 gtk-sharp2-2.10.0-4.fc7 GNOME Desktop 2.19.4 OS Fedora development( rawhide 20070629 )
The crash is because of this: ** (/usr/lib/beagle/BeagleDaemon.exe:4560): WARNING **: Missing method Evolution.CalUtil::FreeGlueCompGLibSList(intptr) in assembly /usr/lib/mono/gac/evolution-sharp/2.0.0.0__457eed85bd9370df/evolution-sharp.dll, referenced in assembly /usr/lib/beagle/Backends/EvolutionBackends.dll Error: Unhandled exception thrown. Exiting immediately. System.MissingMethodException: Method not found: 'Evolution.CalUtil.FreeGlueCompGLibSList'. It looks like Fedora might be packaging a too-old version of evolution-sharp. What version is included?
(In reply to comment #1) > It looks like Fedora might be packaging a too-old version of evolution-sharp. > What version is included? evolution-sharp-0.13 $rpm -q evolution-sharp evolution-sharp-0.13-2.fc8
Ok, the problem is that API was *removed* from evolution-sharp without updating the API interface version number in configure.in. I'm raising this to critical and assigning it to Varadhan. In the meantime, it can be patched out of Beagle by removing this line from beagled/EvolutionDataServerQueryable/EvolutionDataServerQueryable.cs: CalUtil.FreeGlueCompGLibSList (IntPtr.Zero); and recompiling. This was reported downstream too in https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=245521
(We really need to change the default assignee of evo-sharp from mkestner to varadhan...)
I really hate to be that guy but is there any hopes for an official fix for this. I'd love to see Beagle enabled by default in Fedora again but this one is really hindering the required QA for that goal to be attained.
*** Bug 465358 has been marked as a duplicate of this bug. ***
Hi, I'm using Ubuntu Gutsy (7.10) Here are some details: cbovy@localhost:/$ locate evolution-sharp /usr/lib/pkgconfig/evolution-sharp.pc /usr/lib/mono/gac/evolution-sharp /usr/lib/mono/gac/evolution-sharp/2.0.0.0__457eed85bd9370df /usr/lib/mono/gac/evolution-sharp/2.0.0.0__457eed85bd9370df/evolution-sharp.dll.config /usr/lib/mono/gac/evolution-sharp/2.0.0.0__457eed85bd9370df/evolution-sharp.dll /usr/lib/cli/evolution-sharp-2.0 /usr/lib/cli/evolution-sharp-2.0/libevolutionglue.so /usr/lib/cli/evolution-sharp-2.0/evolution-sharp.dll.config /usr/lib/cli/evolution-sharp-2.0/evolution-sharp.dll It seems that multiple evolution-sharp.dll are present. cbovy@localhost:~$ dpkg -S /usr/lib/cli/evolution-sharp-2.0/evolution-sharp.dll libevolution2.0-cil: /usr/lib/cli/evolution-sharp-2.0/evolution-sharp.dll cbovy@localhost:~$ dpkg -S /usr/lib/mono/gac/evolution-sharp/2.0.0.0__457eed85bd9370df/evolution-sharp.dll dpkg: /usr/lib/mono/gac/evolution-sharp/2.0.0.0__457eed85bd9370df/evolution-sharp.dll not found. There is something wrong with the package-management, I think. Beagle uses the wrong dll in my opinion. Does it need a recompile to use the other dll or a simple configuration change?
It's not something that can be fixed by packaging alone. There is an expected contract of changing the version number for the DLL whenever the API was changed; that wasn't followed and is the reason for the pain.
Created attachment 93599 [details] [review] Patch to Beagle 0.2.17 to workaround this This is a patch we're applying to our package to work around this problem. I doubt the removed API will be readded, so Beagle will probably just rely on a newer version of evolution-sharp in its next release.
Ah! my bad! I updated the package-version and didn't notice the API version. I just updated it in SVN and released 0.13.3. Closing the bug as fixed.
So for now the "solution" is to use beagle 0.2.17 + patch?
(In reply to comment #11) > So for now the "solution" is to use beagle 0.2.17 + patch? Yes. I'm planning on doing an "emergency" 0.2.18 release tomorrow or Tuesday.