Bug 712070

Summary: Evolution fails to start, giving a gdbus error
Product: [Fedora] Fedora Reporter: Iestyn Pryce <dylunio>
Component: evolutionAssignee: Matthew Barnes <mbarnes>
Status: CLOSED WORKSFORME QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 15CC: lucilanga, mbarnes, mcrha
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Linux   
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-06-10 16:17:05 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Iestyn Pryce 2011-06-09 12:35:50 UTC
Description of problem:

When starting evolution, nothing happens. If started in the command line I get the following error:

"(evolution:13357): Unique-GDBus-WARNING **: Error while sending message: Timeout was reached"

Version-Release number of selected component (if applicable):

Evolution 3. Tested upto version 3.0.2-2 from updates-testing

How reproducible:
It occurs each time I attempt to start evolution

Steps to Reproduce:
1. Attempt to start evolution
Actual results:

Nothing happens for a few seconds, then I get the error in the terminal:
"(evolution:13357): Unique-GDBus-WARNING **: Error while sending message: Timeout was reached"

Expected results:
Evolution starts

Additional info:
Note that this install of Fedora 15 was upgraded from an install from F13.

When I initially started Evolution I got the 'Do you want to migrate the old evolution data format to the new format?' window, and I selected 'yes', and then I got the error. After this first time the migration window has not appeared.

Comment 1 Matthew Barnes 2011-06-09 13:25:38 UTC
It might mean you have a primary evolution instance that's stuck, and subsequent evolution instances are trying to defer to the primary instance but can't make contact with it.

Run either System Monitor or do "ps ax | grep evolution" from a terminal and kill any evolution instances you see.  Then try to start it again.

Comment 2 Iestyn Pryce 2011-06-09 14:03:41 UTC
Thanks Matthew for your swift response, indeed there was an instance of evolution running. I killed this and attempted to start again. Now when starting evolution it just hangs without displaying any error messages, and with no windows opening.

When running evolution in gdb I get the output:

(gdb) run
Starting program: /usr/bin/evolution 
[Thread debugging using libthread_db enabled]
warning: the debug information found in "/usr/lib/debug//usr/lib/libXi.so.6.1.0.debug" does not match "/usr/lib/libXi.so.6" (CRC mismatch).

warning: the debug information found in "/usr/lib/debug/usr/lib/libXi.so.6.1.0.debug" does not match "/usr/lib/libXi.so.6" (CRC mismatch).

Gtk-Message: Failed to load module "pk-gtk-module"
[New Thread 0xb7d1fb70 (LWP 13744)]
[New Thread 0xb2c2cb70 (LWP 13745)]
[Thread 0xb2c2cb70 (LWP 13745) exited]
[New Thread 0xb2c2cb70 (LWP 13746)]
[Thread 0xb2c2cb70 (LWP 13746) exited]

where it hangs. (I have evolution-debuginfo installed.)

Comment 3 Matthew Barnes 2011-06-09 14:10:24 UTC
Hmm, okay.  So that at least explains the Unique-GDBus warnings.

Can you run it again in gdb, and this time when it hangs hit Ctrl-C and type "thread apply all backtrace" at the (gdb) prompt?  Then post the full output here so I can try to see where it's getting stuck.

Comment 4 Iestyn Pryce 2011-06-09 14:19:56 UTC
The backtrace:

Thread 2 (Thread 0xb7d1fb70 (LWP 13744)):
#0  0x00110416 in __kernel_vsyscall ()
#1  0x4e843b7e in __poll (fds=0xb7402880, nfds=3, timeout=-1)
    at ../sysdeps/unix/sysv/linux/poll.c:87
#2  0x007a2aac in g_poll (fds=0xb7402880, nfds=3, timeout=-1) at gpoll.c:132
#3  0x00793c36 in g_main_context_poll (n_fds=3, fds=0x4e9365a0, 
    priority=<optimized out>, timeout=<optimized out>, context=0x80db960)
    at gmain.c:3405
#4  g_main_context_iterate (context=0x80db960, block=8006272, dispatch=1, self=
    0x80db9f0) at gmain.c:3087
#5  0x00794457 in g_main_loop_run (loop=0x80db950) at gmain.c:3300
#6  0x00686032 in gdbus_shared_thread_func (data=0x0) at gdbusprivate.c:276
#7  0x007bb535 in g_thread_create_proxy (data=0x80db9f0) at gthread.c:1955
#8  0x4e9339fe in start_thread (arg=0xb7d1fb70) at pthread_create.c:305
#9  0x4e84e22e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:133

Thread 1 (Thread 0xb7fc6890 (LWP 13741)):
#0  0x00110416 in __kernel_vsyscall ()
#1  0x4e813366 in nanosleep () at ../sysdeps/unix/syscall-template.S:82
#2  0x4e84764d in usleep (useconds=15000)
    at ../sysdeps/unix/sysv/linux/usleep.c:33
#3  0x411ad7a3 in unixSleep (NotUsed=0x4436ba00, microseconds=15000)
---Type <return> to continue, or q <return> to quit---
    at sqlite3.c:28047
#4  0x411a9ed1 in sqlite3OsSleep (nMicro=<optimized out>, pVfs=<optimized out>)
    at sqlite3.c:13949
#5  sqliteDefaultBusyCallback (ptr=0x84e22c8, count=4) at sqlite3.c:40346
#6  0x411a7fa9 in sqlite3InvokeBusyHandler (p=0x84e2474) at sqlite3.c:105905
#7  btreeInvokeBusyHandler (pArg=0x84e2708) at sqlite3.c:47154
#8  0x411b260e in pager_wait_on_lock (pPager=0x84e2b90, locktype=1)
    at sqlite3.c:38543
#9  0x411d88a4 in sqlite3PagerSharedLock (pPager=0x84e2b90) at sqlite3.c:39605
#10 0x411e767f in lockBtree (pBt=0x84e2708) at sqlite3.c:47785
#11 sqlite3BtreeBeginTrans (p=0x84e26c8, wrflag=0) at sqlite3.c:48077
#12 0x411f4f97 in sqlite3VdbeExec (p=0x929d630) at sqlite3.c:63407
#13 0x411f9cfe in sqlite3Step (p=0x929d630) at sqlite3.c:59036
#14 sqlite3_step (pStmt=0x929d630) at sqlite3.c:59101
#15 sqlite3_step (pStmt=0x929d630) at sqlite3.c:59089
#16 0x411ff32d in sqlite3_exec (db=0x84e22c8, zSql=
    0x92934b8 "SELECT uid, flags, size, dsent, dreceived, subject, mail_from, mail_to, mail_cc, mlist, part, labels, usertags, cinfo, bdata FROM 'Inbox' WHERE uid = '1307120419.1935_1080.bebop'", xCallback=
    0x416a2c50 <camel_read_mir_callback>, pArg=0xbfffe728, pzErrMsg=0xbfffe69c)
    at sqlite3.c:84523
#17 0x443062c2 in camel_db_select (cdb=0x84e2b78, stmt=
    0x92934b8 "SELECT uid, flags, size, dsent, dreceived, subject, mail_from, ma---Type <return> to continue, or q <return> to quit---
il_to, mail_cc, mlist, part, labels, usertags, cinfo, bdata FROM 'Inbox' WHERE uid = '1307120419.1935_1080.bebop'", callback=
    0x416a2c50 <camel_read_mir_callback>, data=0xbfffe728, error=0x0)
    at camel-db.c:961
#18 0x443073f3 in camel_db_read_message_info_record_with_uid (cdb=0x84e2b78, 
    folder_name=0x8515298 "Inbox", uid=0x8e06100 "1307120419.1935_1080.bebop", 
    p=0xbfffe728, read_mir_callback=0x416a2c50 <camel_read_mir_callback>, 
    error=0x0) at camel-db.c:1834
#19 0x416a2ac9 in message_info_from_uid (s=0x8533090 [CamelMaildirSummary], 
    uid=0x8e06100 "1307120419.1935_1080.bebop") at camel-folder-summary.c:1261
#20 0x4169c30f in camel_folder_summary_uid (summary=
    0x8533090 [CamelMaildirSummary], uid=
    0x8e06100 "1307120419.1935_1080.bebop") at camel-folder-summary.c:1307
#21 0x416dce60 in camel_vee_summary_add (s=0x80fb520 [CamelVeeSummary], 
    summary=0x8533090 [CamelMaildirSummary], uid=
    0x8e06100 "1307120419.1935_1080.bebop", hash=0xbfffe8b4 "idITc3y1")
    at camel-vee-summary.c:474
#22 0x416d62e9 in vee_folder_add_uid (hash=0xbfffe8b4 "idITc3y1", inuid=
    0x8e06100 "1307120419.1935_1080.bebop", f=<optimized out>, 
    vf=<optimized out>) at camel-vee-folder.c:84
#23 folder_added_uid (uidin=0x8e06100 "1307120419.1935_1080.bebop", value=0x1, 
    u=0xbfffe8ac) at camel-vee-folder.c:714
#24 0x00782674 in g_hash_table_foreach (hash_table=0x8a44090 = {...}, func=
---Type <return> to continue, or q <return> to quit---
    0x416d62a0 <folder_added_uid>, user_data=0xbfffe8ac) at ghash.c:1326
#25 0x416d9704 in vee_folder_rebuild_folder (vee_folder=
    0x84b9418 [CamelVTrashFolder], source=0x84d78e0 [CamelMaildirFolder], 
    error=0x0) at camel-vee-folder.c:1784
#26 0x416d9a30 in vee_folder_add_folder (vee_folder=
    0x84b9418 [CamelVTrashFolder], sub=0x84d78e0 [CamelMaildirFolder])
    at camel-vee-folder.c:1461
#27 0x416d777a in camel_vee_folder_add_folder (vf=
    0x84b9418 [CamelVTrashFolder], sub=0x84d78e0 [CamelMaildirFolder])
    at camel-vee-folder.c:2127
#28 0x416c98b8 in store_get_special (store=<optimized out>, 
    type=<optimized out>) at camel-store.c:211
#29 0x00ea2f73 in local_store_get_junk_folder_sync (store=
    0x84af428 [CamelMaildirStore], cancellable=0x0, error=0x0)
    at camel-local-store.c:257
#30 0x416cc105 in camel_store_get_folder_sync (store=
    0x84af428 [CamelMaildirStore], folder_name=<optimized out>, flags=0, 
    cancellable=0x0, error=0x0) at camel-store.c:2209
#31 0x416cd4ce in camel_store_get_junk_folder_sync (store=
    0x84af428 [CamelMaildirStore], cancellable=0x0, error=0x0)
    at camel-store.c:2621
#32 0x418becb6 in store_info_new (display_name=
    0xb7db830c "Ar y Cyfeiriadur Hwn", store=0x84af428 [CamelMaildirStore])
---Type <return> to continue, or q <return> to quit---
    at e-mail-store.c:93
#33 mail_store_add (session=0x80ff460 [EMailSession], store=
    0x84af428 [CamelMaildirStore], display_name=
    0xb7db830c "Ar y Cyfeiriadur Hwn", callback=
    0x418bed50 <mail_store_add_local_done_cb>) at e-mail-store.c:185
#34 0x418bf29d in mail_store_load_accounts (data_dir=
    0x80f4040 "/home/imp25/.local/share/evolution/mail", session=
    0x80ff460 [EMailSession]) at e-mail-store.c:228
#35 e_mail_store_init (session=0x80ff460 [EMailSession], data_dir=
    0x80f4040 "/home/imp25/.local/share/evolution/mail") at e-mail-store.c:285
#36 0x00ac5084 in mail_shell_backend_start (shell_backend=
    0x806aa98 [EMailShellBackend]) at e-mail-shell-backend.c:548
#37 0x41848c90 in e_shell_backend_start (shell_backend=
    0x806aa98 [EMailShellBackend]) at e-shell-backend.c:506
#38 0x4185836f in shell_window_create_shell_view (shell_window=
    0x8462110 [EShellWindow], view_name=0x84dbf28 "mail")
    at e-shell-window.c:628
#39 0x41857eb3 in e_shell_window_get_shell_view (shell_window=
    0x8462110 [EShellWindow], view_name=0x84dbf28 "mail")
    at e-shell-window.c:1043
#40 0x41859060 in e_shell_window_set_active_view (shell_window=
    0x8462110 [EShellWindow], view_name=0x84dbf28 "mail")
    at e-shell-window.c:1285
---Type <return> to continue, or q <return> to quit---
#41 0x41859b17 in shell_window_set_property (object=0x8462110 [EShellWindow], 
    property_id=1, value=0xbfffecfc, pspec=0x842d680 [GParamString])
    at e-shell-window.c:194
#42 0x0070e74c in object_set_property (nqueue=0x831d1b0, value=0xbfffed68, 
    pspec=<optimized out>, object=0x8462110 [EShellWindow]) at gobject.c:1185
#43 g_object_set_property (object=0x8462110 [EShellWindow], property_name=
    0x8315a80 "active-view", value=0xbfffed68) at gobject.c:1915
#44 0x4f7dec61 in prop_binding_sync_pref_to_prop (binding=0x84da9b0, 
    pref_value=<optimized out>) at gconf-bridge.c:240
#45 0x4f7df6a9 in gconf_bridge_bind_property_full (bridge=0x811c860, key=
    0x41864dd4 "/apps/evolution/shell/view_defaults/component_id", object=
    0x8462110 [EShellWindow], prop=0x41867b6b "active-view", delayed_sync=0)
    at gconf-bridge.c:538
#46 0x4185acac in e_shell_window_private_constructed (shell_window=
    0x8462110 [EShellWindow]) at e-shell-window-private.c:430
#47 0x418577ba in shell_window_constructed (object=0x8462110 [EShellWindow])
    at e-shell-window.c:339
#48 0x0070c70a in g_object_newv (object_type=137418976, n_parameters=3, 
    parameters=0x83fd410) at gobject.c:1507
#49 0x0070d17b in g_object_new_valist (object_type=137418976, 
    first_property_name=0x41864b07 "shell", var_args=0xbffff060 "\001")
    at gobject.c:1596
#50 0x0070d3d0 in g_object_new (object_type=137418976, first_property_name=
---Type <return> to continue, or q <return> to quit---
    0x41864b07 "shell") at gobject.c:1311
#51 0x418579cb in e_shell_window_new (shell=0x80ee810 [EShell], safe_mode=1, 
    geometry=0x0) at e-shell-window.c:985
#52 0x41846028 in e_shell_create_shell_window (shell=0x80ee810 [EShell], 
    view_name=0x0) at e-shell.c:1488
#53 0x0804a310 in idle_cb (uris=0x0) at main.c:256
#54 0x0078f5d1 in g_idle_dispatch (source=0x843fe40, callback=
    0x804a270 <idle_cb>, user_data=0x0) at gmain.c:4558
#55 0x007935bf in g_main_dispatch (context=0x806f9a0) at gmain.c:2441
#56 g_main_context_dispatch (context=0x806f9a0) at gmain.c:3014
#57 0x00793d30 in g_main_context_iterate (context=0x806f9a0, block=8006272, 
    dispatch=1, self=0x804f080) at gmain.c:3092
#58 0x00794457 in g_main_loop_run (loop=0x843fe78) at gmain.c:3300
#59 0x0026f015 in gtk_main () at gtkmain.c:1358
#60 0x08049d09 in main (argc=1, argv=0xbffff354) at main.c:734

Comment 5 Matthew Barnes 2011-06-09 14:59:49 UTC
So it's SQLite that's getting stuck.  This isn't the first time I've seen this, but I still don't know what's causing it.  Clearly we need to rethink how we're accessing the database such that it doesn't block the whole application, but that's gonna be a project unto itself.

A quick and dirty solution is to delete the SQLite database and let Evolution regenerate it.

    rm ~/.local/share/evolution/mail/local/folders.db

You won't lose your emails, but you WILL lose any custom labels and follow-up reminders that you've applied to emails under "On This Computer".  If that's not an issue for you, you can try deleting the database file.  Otherwise we can dig deeper.

Comment 6 Milan Crha 2011-06-10 10:01:36 UTC
This is pretty close to bug #710085, where also helped to remove the folders.db file. Maybe we can mark this as a duplicate of it, if Iestyn confirms the workaround works for him.

Comment 7 Iestyn Pryce 2011-06-10 15:50:24 UTC
Matthew, many thanks for your advice. By deleting the sqlite database and letting evolution regenerate it evolution now starts and works as expected.

Comment 8 Matthew Barnes 2011-06-10 16:17:05 UTC
Okay cool, so we'll call this fixed then even though the SQLite issues remains at large.  I'm sure that issue is filed upstream.