Bug 497598

Summary: Evolution stops working permanently, assertion failure in camel_object_bag_reserve
Product: [Fedora] Fedora Reporter: Pavel Roskin <plroskin>
Component: evolution-data-serverAssignee: Matthew Barnes <mbarnes>
Status: CLOSED UPSTREAM QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: low    
Version: 10CC: mbarnes, mcrha
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-04-27 08:30:50 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Bug Buddy report, including full backtrace
none
Contents of .evolution/mail.save/imap/proski@spamcop.net@imap.spamcop.net/folders/INBOX/subfolders/Later none

Description Pavel Roskin 2009-04-24 22:13:44 UTC
Description of problem:
Evolution stopped working for me.  Even reboot doesn't help.  When starting evolution of the command line, I get:

$ evolution 
evolution-shell-Message: Killing old version of evolution-data-server...
** (evolution:7021): DEBUG: mailto URL command: evolution --component=mail %s
** (evolution:7021): DEBUG: mailto URL program: evolution
libnm_glib_nm_state_cb: dbus returned an error.
  (org.freedesktop.DBus.Error.ServiceUnknown) The name org.freedesktop.NetworkManager was not provided by any .service files
**
camel:ERROR:camel-object.c:2209:camel_object_bag_reserve: assertion failed: (!res->have_owner || !pthread_equal(res->owner, pthread_self()))

Version-Release number of selected component (if applicable):
evolution-2.24.5-1.fc10

How reproducible:
Always once it happened, but I don't know how to make it happen on another system.

Steps to Reproduce:
1. I believe I started and closed Evolution several times quickly before it happened.
  
Actual results:
Evolution doesn't start.

Expected results:
Evolution starts.

Additional info:
Removing .evolution/mail/config/folder-tree-expand-state.xml and .evolution/mail/vfolders.xml made evolution start, but it exited soon with the same assertion.  Removal of .evolution/mail helps, but it loses all local mail and all filter settings.

Comment 1 Pavel Roskin 2009-04-25 07:56:47 UTC
I've upgraded that system to Rawhide.  The bug persists.

$ rpm -qa |grep evol
evolution-data-server-devel-2.26.1-1.fc11.x86_64
evolution-data-server-doc-2.26.1-1.fc11.noarch
evolution-2.26.1-2.fc11.x86_64
evolution-data-server-2.26.1-1.fc11.x86_64
evolution-debuginfo-2.26.1-2.fc11.x86_64
evolution-perl-2.26.1-2.fc11.x86_64
evolution-data-server-debuginfo-2.26.1-1.fc11.x86_64

The error message is the same:

camel:ERROR:camel-object.c:2209:camel_object_bag_reserve: assertion failed: (!res->have_owner || !pthread_equal(res->owner, pthread_self()))

This time Bug Buddy starts.  I'm attaching its report.

It looks like INBOX/Later plays some role in the stack trace.  A actually have that folder on my IMAP server.  It's currently empty, but Evolution was showing 6 unread messages in it.  The count was wrong, no actual message headers were shown.  I tried changing settings on that folder with the right click, I tried restarting Evolution several times, I tried using offline mode.  At some point, Evolution would not start anymore, and that's how this bug appeared.

Google search found that the error message is mentioned in a German Ubuntu forum, so it's not Fedora specific:
http://forum.ubuntuusers.de/topic/evolution-stuerzt-ab-problem-mit-data-server/

Comment 2 Pavel Roskin 2009-04-25 07:58:44 UTC
Created attachment 341295 [details]
Bug Buddy report, including full backtrace

Comment 3 Pavel Roskin 2009-04-25 08:13:47 UTC
Created attachment 341296 [details]
Contents of .evolution/mail.save/imap/proski@imap.spamcop.net/folders/INBOX/subfolders/Later

Emptying "journal" and removing other files has fixed the problem!

Comment 4 Pavel Roskin 2009-04-27 06:19:52 UTC
camel_object_bag_reserve() is in /usr/lib64/libcamel-1.2.so.14.0.0 from evolution-data-server-2.26.1-1.fc11.  Adjusting the component accordingly.

Comment 5 Milan Crha 2009-04-27 08:30:50 UTC
Thanks for the bug report and great investigation. I'm closing as upstream with your bug report there.

http://bugzilla.gnome.org/show_bug.cgi?id=580198