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 539334 - crash in e_week_view_find_event_from_uid at e-week-view.c:3677
crash in e_week_view_find_event_from_uid at e-week-view.c:3677
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: Calendar
2.24.x (obsolete)
Other All
: High critical
: ---
Assigned To: Milan Crha
Evolution QA team
: 487749 539146 539353 551776 575792 580881 581219 581273 588868 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2008-06-20 17:43 UTC by Dan Elder
Modified: 2009-08-20 15:18 UTC
See Also:
GNOME target: ---
GNOME version: 2.21/2.22


Attachments
proposed evo patch (5.57 KB, patch)
2009-03-27 20:09 UTC, Milan Crha
committed Details | Review

Description Dan Elder 2008-06-20 17:43:20 UTC
What were you doing when the application crashed?
Nothing that I know of, evolution was idle at the time and not being used (aside from periodic mail checks and whatnot)


Distribution: openSUSE 11.0 (X86-64)
Gnome Release: 2.22.1 2008-06-07 (SUSE)
BugBuddy Version: 2.22.0

System: Linux 2.6.25.5-1.1-default #1 SMP 2008-06-07 01:55:22 +0200 x86_64
X Vendor: The X.Org Foundation
X Vendor Release: 10400090
Selinux: No
Accessibility: Enabled
GTK+ Theme: Gilouche
Icon Theme: Gilouche

Memory status: size: 971669504 vsize: 971669504 resident: 352284672 share: 29138944 rss: 381423616 rss_rlim: 3471764480
CPU usage: start_time: 1213899084 rtime: 77104 utime: 51912 stime: 25192 cutime:27 cstime: 66 timeout: 0 it_real_value: 0 frequency: 100

Backtrace was generated from '/usr/bin/evolution'

[?1034h[Thread debugging using libthread_db enabled]
[New Thread 0x7f79edf4f760 (LWP 6627)]
[New Thread 0x42ee0950 (LWP 7103)]
[New Thread 0x41857950 (LWP 7087)]
0x00007f79e5caa64f in __libc_waitpid (pid=31953, stat_loc=0x7ffff5f9f1a0, 
    options=0) at ../sysdeps/unix/sysv/linux/waitpid.c:41
	in ../sysdeps/unix/sysv/linux/waitpid.c

Thread 1 (Thread 0x7f79edf4f760 (LWP 6627))

  • #0 __libc_waitpid
    at ../sysdeps/unix/sysv/linux/waitpid.c line 41
  • #1 IA__g_spawn_sync
    at gspawn.c line 374
  • #2 IA__g_spawn_command_line_sync
    at gspawn.c line 682
  • #3 check_if_gdb
    at gnome-breakpad.cc line 213
  • #4 bugbuddy_segv_handle
    at gnome-breakpad.cc line 87
  • #5 <signal handler called>
  • #6 e_week_view_find_event_from_uid
    at e-week-view.c line 3677
  • #7 model_rows_deleted_cb
    at e-week-view.c line 418
  • #8 IA__g_closure_invoke
    at gclosure.c line 490
  • #9 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #10 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #11 IA__g_signal_emit
    at gsignal.c line 2243
  • #12 e_cal_view_objects_added_cb
    at e-cal-model.c line 1435
  • #13 IA__g_closure_invoke
    at gclosure.c line 490
  • #14 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #15 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #16 IA__g_signal_emit
    at gsignal.c line 2243
  • #17 objects_modified_cb
    at e-cal-view.c line 91
  • #18 IA__g_closure_invoke
    at gclosure.c line 490
  • #19 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #20 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #21 IA__g_signal_emit
    at gsignal.c line 2243
  • #22 impl_notifyObjectsModified
    at e-cal-view-listener.c line 157
  • #23 ORBit_small_invoke_adaptor
    at orbit-small.c line 844
  • #24 ORBit_POAObject_handle_request
    at poa.c line 1351
  • #25 ORBit_POAObject_invoke_incoming_request
    at poa.c line 1421
  • #26 giop_thread_queue_process
    at giop.c line 771
  • #27 giop_recv_buffer_get
    at giop-recv-buffer.c line 713
  • #28 ORBit_small_invoke_stub
    at orbit-small.c line 658
  • #29 Accessibility_EventListener_notifyEvent
    from /usr/lib64/libspi.so.0
  • #30 ??
    from /usr/lib64/gtk-2.0/modules/libatk-bridge.so
  • #31 ??
    from /usr/lib64/gtk-2.0/modules/libatk-bridge.so
  • #32 signal_emit_unlocked_R
    at gsignal.c line 2406
  • #33 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #34 IA__g_signal_emit
    at gsignal.c line 2243
  • #35 atk_gobject_accessible_dispose
    at atkgobjectaccessible.c line 142
  • #36 weak_refs_notify
    at gobject.c line 1466
  • #37 IA__g_datalist_id_set_data_full
    at gdataset.c line 242
  • #38 ??
    from /usr/lib64/libgnomecanvas-2.so.0
  • #39 IA__g_object_run_dispose
    at gobject.c line 573
  • #40 e_week_view_remove_event_cb
    at e-week-view.c line 1941
  • #41 model_rows_deleted_cb
    at e-week-view.c line 419
  • #42 IA__g_closure_invoke
    at gclosure.c line 490
  • #43 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #44 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #45 IA__g_signal_emit
    at gsignal.c line 2243
  • #46 e_cal_view_objects_added_cb
    at e-cal-model.c line 1435
  • #47 IA__g_closure_invoke
    at gclosure.c line 490
  • #48 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #49 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #50 IA__g_signal_emit
    at gsignal.c line 2243
  • #51 objects_modified_cb
    at e-cal-view.c line 91
  • #52 IA__g_closure_invoke
    at gclosure.c line 490
  • #53 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #54 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #55 IA__g_signal_emit
    at gsignal.c line 2243
  • #56 impl_notifyObjectsModified
    at e-cal-view-listener.c line 157
  • #57 ORBit_small_invoke_adaptor
    at orbit-small.c line 844
  • #58 ORBit_POAObject_handle_request
    at poa.c line 1351
  • #59 ORBit_POAObject_invoke_incoming_request
    at poa.c line 1421
  • #60 giop_thread_queue_process
    at giop.c line 771
  • #61 giop_recv_buffer_get
    at giop-recv-buffer.c line 713
  • #62 ORBit_small_invoke_stub
    at orbit-small.c line 658
  • #63 Bonobo_Unknown_unref
    at Bonobo_Unknown-stubs.c line 15
  • #64 bonobo_object_release_unref
    at bonobo-object.c line 577
  • #65 e_cal_view_finalize
    at e-cal-view.c line 227
  • #66 IA__g_object_unref
    at gobject.c line 1793
  • #67 update_query
    at gnome-cal.c line 839
  • #68 IA__g_closure_invoke
    at gclosure.c line 490
  • #69 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #70 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #71 IA__g_signal_emit
    at gsignal.c line 2243
  • #72 objects_modified_cb
    at e-cal-view.c line 91
  • #73 IA__g_closure_invoke
    at gclosure.c line 490
  • #74 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #75 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #76 IA__g_signal_emit
    at gsignal.c line 2243
  • #77 impl_notifyObjectsModified
    at e-cal-view-listener.c line 157
  • #78 ORBit_small_invoke_adaptor
    at orbit-small.c line 844
  • #79 ORBit_POAObject_handle_request
    at poa.c line 1351
  • #80 ORBit_POAObject_invoke_incoming_request
    at poa.c line 1421
  • #81 giop_thread_queue_process
    at giop.c line 771
  • #82 giop_mainloop_handle_input
    at giop.c line 461
  • #83 IA__g_main_context_dispatch
    at gmain.c line 2009
  • #84 g_main_context_iterate
    at gmain.c line 2642
  • #85 IA__g_main_loop_run
    at gmain.c line 2850
  • #86 bonobo_main
    at bonobo-main.c line 311
  • #87 main
    at main.c line 782


----------- .xsession-errors ---------------------
subcell_view 0xacd5f0 deleted before the a11y object 0x73bbda0
subcell_view 0xacd5f0 deleted before the a11y object 0x922f5c0
subcell_view 0x70b3f80 deleted before the a11y object 0x73bddc0
subcell_view 0x70b3f80 deleted before the a11y object 0x4cc52b0
Number of items in the folder: 15914 
Number of items in the folder: 11166 
Number of items in the folder: 11165 
Number of items in the folder: 11165 
Number of items in the folder: 11166 
41	../sysdeps/unix/sysv/linux/waitpid.c: No such file or directory.
--------------------------------------------------
Comment 1 Dan Elder 2008-06-20 22:43:08 UTC
As this bug seems to probably be Groupwise specific I've also opened a bug at https://bugzilla.novell.com/show_bug.cgi?id=402407 for Novell tracking.
Comment 2 Dan Elder 2008-06-20 22:46:15 UTC
*** Bug 539353 has been marked as a duplicate of this bug. ***
Comment 3 Dan Elder 2008-06-20 22:47:42 UTC
*** Bug 539146 has been marked as a duplicate of this bug. ***
Comment 4 Tobias Mueller 2008-06-21 11:29:12 UTC
Thanks for you good bug report :)

Can you reproduce this issue?

Would you mind to share the event with the uid "2008-06-05T16:06:23Z_A1DA00B1@novacoast.com" with us?

For the devs: the crashing line seems to be
		if (event->comp_data->client != client)
			continue;
Comment 5 Dan Elder 2008-07-29 04:16:13 UTC
I can share anything you need, I'm not exactly sure what you would need though.  Is it possible to export single events from the calendar?
Comment 6 Milan Crha 2008-07-29 07:32:50 UTC
Hi Dan, I noticed reports with similar crash in the same place before, the problem is the event->comp_data is NULL, but Evo tries to access a 'client' member of that structure, which results in SIGSEGV.

I would like to know/find why that happened, because it's always easier to fix some issue on proper place than just workaround it on the other. Maybe the additional check for event->comp != NULL is correct there, but without any other knowledge/prove one cannot be sure.

The question is same as Tobias asked:
Are you able to reproduce this reliably? And if so, can you give us some steps? It can be related to the editing of some event in the week view, and then something happened, like a refresh interval occurs and there has been found some changes in the calendar from the network? Just a guess.
Comment 7 Dan Elder 2008-07-29 14:54:52 UTC
Hi Milan,
I can definitely reproduce this within 5-10 minutes of accessing my Groupwise calendar in evolution.  I've blown away my calendar cache and it rebuilds itself just fine but will eventually crash anyway.  It doesn't matter if I'm currently in the calendar component, if it's been opened at any point it will crash.  Evolution is perfectly stable for as long as I need if I don't open the calendar component though. 
The steps on my system or fairly simple, if I open the calendar component at any point while running evolution, I have a short amount of time before evolution will crash.  I can add appointments/meetings from the mailer (or any other component) without causing any problems but launching the calendar will cause a crash.  My default calendar view is the month view if that makes any difference.
Here's another crash trace (just in case anything has changed in my crash):

Distribution: openSUSE 11.0 (X86-64)
Gnome Release: 2.22.1 2008-06-07 (SUSE)
BugBuddy Version: 2.22.0

System: Linux 2.6.25.11-0.1-default #1 SMP 2008-07-13 20:48:28 +0200 x86_64
X Vendor: The X.Org Foundation
X Vendor Release: 10400090
Selinux: No
Accessibility: Enabled
GTK+ Theme: Gilouche
Icon Theme: Gilouche

Memory status: size: 791965696 vsize: 791965696 resident: 212262912 share: 27303936 rss: 239566848 rss_rlim: 3471764480
CPU usage: start_time: 1217287609 rtime: 22612 utime: 16818 stime: 5794 cutime:5 cstime: 21 timeout: 0 it_real_value: 0 frequency: 100

Backtrace was generated from '/usr/bin/evolution'

[?1034h[Thread debugging using libthread_db enabled]
[New Thread 0x7ffafdf52760 (LWP 32148)]
[New Thread 0x4349b950 (LWP 13521)]
[New Thread 0x41b0b950 (LWP 32243)]
0x00007ffaf5cae64f in __libc_waitpid (pid=2294, stat_loc=0x7fff05fa41e0, 
    options=0) at ../sysdeps/unix/sysv/linux/waitpid.c:41
	in ../sysdeps/unix/sysv/linux/waitpid.c

Thread 1 (Thread 0x7ffafdf52760 (LWP 32148))

  • #0 __libc_waitpid
    at ../sysdeps/unix/sysv/linux/waitpid.c line 41
  • #1 g_spawn_sync
    from /usr/lib64/libglib-2.0.so.0
  • #2 g_spawn_command_line_sync
    from /usr/lib64/libglib-2.0.so.0
  • #3 check_if_gdb
    at gnome-breakpad.cc line 213
  • #4 bugbuddy_segv_handle
    at gnome-breakpad.cc line 87
  • #5 <signal handler called>
  • #6 e_week_view_find_event_from_uid
    at e-week-view.c line 3677
  • #7 model_rows_deleted_cb
    at e-week-view.c line 418
  • #8 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #9 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #10 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #11 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #12 e_cal_view_objects_added_cb
    at e-cal-model.c line 1435
  • #13 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #14 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #15 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #16 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #17 objects_added_cb
    at e-cal-view.c line 79
  • #18 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #19 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #20 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #21 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #22 impl_notifyObjectsAdded
    at e-cal-view-listener.c line 136
  • #23 ORBit_small_invoke_adaptor
    at orbit-small.c line 844
  • #24 ORBit_POAObject_handle_request
    at poa.c line 1351
  • #25 ORBit_POAObject_invoke_incoming_request
    at poa.c line 1421
  • #26 giop_thread_queue_process
    at giop.c line 771
  • #27 giop_recv_buffer_get
    at giop-recv-buffer.c line 713
  • #28 ORBit_small_invoke_stub
    at orbit-small.c line 658
  • #29 Accessibility_EventListener_notifyEvent
    at Accessibility-stubs.c line 422
  • #30 spi_atk_emit_eventv
    at bridge.c line 794
  • #31 spi_atk_bridge_state_event_listener
    at bridge.c line 1001
  • #32 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #33 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #34 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #35 atk_gobject_accessible_dispose
    at atkgobjectaccessible.c line 142
  • #36 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #37 g_datalist_id_set_data_full
    from /usr/lib64/libglib-2.0.so.0
  • #38 gnome_canvas_item_dispose
    at gnome-canvas.c line 354
  • #39 g_object_run_dispose
    from /usr/lib64/libgobject-2.0.so.0
  • #40 e_week_view_remove_event_cb
    at e-week-view.c line 1941
  • #41 model_rows_deleted_cb
    at e-week-view.c line 419
  • #42 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #43 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #44 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #45 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #46 e_cal_view_objects_added_cb
    at e-cal-model.c line 1435
  • #47 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #48 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #49 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #50 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #51 objects_added_cb
    at e-cal-view.c line 79
  • #52 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #53 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #54 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #55 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #56 impl_notifyObjectsAdded
    at e-cal-view-listener.c line 136
  • #57 ORBit_small_invoke_adaptor
    at orbit-small.c line 844
  • #58 ORBit_POAObject_handle_request
    at poa.c line 1351
  • #59 ORBit_POAObject_invoke_incoming_request
    at poa.c line 1421
  • #60 giop_thread_queue_process
    at giop.c line 771
  • #61 giop_mainloop_handle_input
    at giop.c line 461
  • #62 g_main_context_dispatch
    from /usr/lib64/libglib-2.0.so.0
  • #63 ??
    from /usr/lib64/libglib-2.0.so.0
  • #64 g_main_loop_run
    from /usr/lib64/libglib-2.0.so.0
  • #65 bonobo_main
    at bonobo-main.c line 311
  • #66 main
    at main.c line 782


----------- .xsession-errors (108 sec old) ---------------------
Printer 'HP_Photosmart_2570_series' has 0 jobs for delder
Flash Player: Warning: environment variable G_FILENAME_ENCODING is set and is not UTF-8
Flash Player: Warning: environment variable G_FILENAME_ENCODING is set and is not UTF-8
Flash Player: Warning: environment variable G_FILENAME_ENCODING is set and is not UTF-8
(gnome-panel:19182): libecal-WARNING **: e-cal.c:318: Unexpected response
[NoScript] [NoScript] external load intercepted
** (nm-vpnc-auth-dialog:23646): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory
** (nm-vpnc-auth-dialog:23646): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory
Window manager warning: Invalid WM_TRANSIENT_FOR window 0x97 specified for 0x8800003 (evmsgui (o).
[NoScript] [NoScript] external load intercepted
[NoScript] [NoScript] external load intercepted
[NoScript] [NoScript] external load intercepted
--------------------------------------------------


Thanks,
Dan
Comment 8 Milan Crha 2008-07-30 09:42:18 UTC
The event changed, but the place where it crashed didn't. Can you run evolution from console in gdb, let it crash and when it crashes do 'list' and 'print event' and 'print event->comp_data', and copy here all the lines since the crash (one or two lines before you type 'list' in gdb prompt), please? BTW, what is your exact version of the evolution? The actual is 2.22.3.1 and the line where it crashed for you doesn't point where I think it crashes.

If there are some console messages, please paste them here too, thanks.
Comment 9 Milan Crha 2008-07-30 09:46:29 UTC
The wild guess is it is same as bug #544187, look for warnings like:
---
calendar-gui-CRITICAL **: e_cal_model_get_component_at: assertion `row >= 0 && row < priv->objects->len' failed
calendar-gui-CRITICAL **: e_cal_model_copy_component_data: assertion `comp_data != NULL' failed
---
on console
Comment 10 Dan Elder 2008-07-31 04:57:44 UTC
I'm afraid this looks like a different bug from #544187.  Here is what I get from gdb for my evolution (evolution-2.22.1.1-15.1):

(gdb) run
Starting program: /usr/bin/evolution 
[Thread debugging using libthread_db enabled]
[New Thread 0x7f31847df760 (LWP 15865)]
CalDAV Eplugin starting up ...
[New Thread 0x41893950 (LWP 15894)]
.....
[New Thread 0x43096950 (LWP 15952)]
[Thread 0x42895950 (LWP 15951) exited]

(evolution:15865): camel-groupwise-provider-WARNING **: Could not connect..failure connecting

[New Thread 0x42895950 (LWP 15953)]
[New Thread 0x43897950 (LWP 15954)]
[Thread 0x42895950 (LWP 15953) exited]
[New Thread 0x42895950 (LWP 15955)]

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory
e-data-server-ui-Message: Unable to find password(s) in keyring (Keyring reports: No matching results)

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory
[Thread 0x43897950 (LWP 15954) exited]
.....
[Thread 0x41893950 (LWP 16006) exited]
(evolution:15865): e-data-server-DEBUG: Loading categories from "/home/delder/.evolution/categories.xml"
(evolution:15865): e-data-server-DEBUG: Loaded 29 categories
[New Thread 0x41893950 (LWP 16029)]
[New Thread 0x42094950 (LWP 16030)]
[Thread 0x42094950 (LWP 16030) exited]
[New Thread 0x42094950 (LWP 16031)]
[Thread 0x42094950 (LWP 16031) exited]
[New Thread 0x42094950 (LWP 16032)]

(evolution:15865): libecal-WARNING **: e-cal.c:318: Unexpected response
[New Thread 0x40cfc950 (LWP 16033)]

(evolution:15865): libecal-WARNING **: e-cal.c:318: Unexpected response
[New Thread 0x43897950 (LWP 16034)]
[New Thread 0x44098950 (LWP 16035)]
[Thread 0x44098950 (LWP 16035) exited]

(evolution:15865): libecal-WARNING **: e-cal.c:318: Unexpected response
[New Thread 0x44098950 (LWP 16036)]
[New Thread 0x44899950 (LWP 16037)]

(evolution:15865): libecal-WARNING **: e-cal.c:318: Unexpected response
[New Thread 0x4509a950 (LWP 16038)]
[Thread 0x44899950 (LWP 16037) exited]
[New Thread 0x44899950 (LWP 16039)]
[Thread 0x42094950 (LWP 16032) exited]

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory

** (evolution:15865): WARNING **: couldn't connect to daemon at $GNOME_KEYRING_SOCKET: /tmp/keyring-MJ6YEI/socket: No such file or directory
[Thread 0x41893950 (LWP 16029) exited]
[New Thread 0x41893950 (LWP 16062)]
[Thread 0x44098950 (LWP 16036) exited]
.....
[New Thread 0x43096950 (LWP 21244)]
[Thread 0x43096950 (LWP 21244) exited]

Number of items in the folder: 7216 
[Thread 0x44098950 (LWP 21184) exited]
[New Thread 0x44098950 (LWP 21417)]
.....
[New Thread 0x42895950 (LWP 21598)]
[Thread 0x42895950 (LWP 21598) exited]

Number of items in the folder: 7216 
[Thread 0x43096950 (LWP 21538) exited]
[New Thread 0x43096950 (LWP 21776)]
.....
[Thread 0x43096950 (LWP 25159) exited]
[Thread 0x42895950 (LWP 25166) exited]
[New Thread 0x42895950 (LWP 25222)]
[Thread 0x42895950 (LWP 25222) exited]
[New Thread 0x42895950 (LWP 25397)]
[Thread 0x42895950 (LWP 25397) exited]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f31847df760 (LWP 15865)]
0x00007f31719f7332 in e_week_view_find_event_from_uid (week_view=0x26ae320, client=0x25e9ba0, 
    uid=0x2834720 "040000008200E00074C5B7101A82E00800000000C07035764FDCC801", '0' <repeats 16 times>, "100000006B339E67E2365F4B8153BA7E522F7E6C", rid=0x0, 
    event_num_return=0x7fff8c82f28c) at e-week-view.c:3677
3677	e-week-view.c: No such file or directory.
	in e-week-view.c
(gdb) list
3672	in e-week-view.c
(gdb) print event
$1 = (EWeekViewEvent *) 0x2a6d0b0
(gdb) print event->comp_data
$2 = (ECalModelComponent *) 0x0
(gdb) thread apply all bt

Thread 1 (Thread 0x7f31847df760 (LWP 15865))

  • #0 e_week_view_find_event_from_uid
    at e-week-view.c line 3677
  • #1 model_rows_deleted_cb
    at e-week-view.c line 418
  • #2 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #3 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #4 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #5 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #6 e_cal_view_objects_added_cb
    at e-cal-model.c line 1435
  • #7 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #8 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #9 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #10 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #11 objects_added_cb
    at e-cal-view.c line 79
  • #12 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #13 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #14 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #15 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #16 impl_notifyObjectsAdded
    at e-cal-view-listener.c line 136
  • #17 ORBit_small_invoke_adaptor
    at orbit-small.c line 844
  • #18 ORBit_POAObject_handle_request
    at poa.c line 1351
  • #19 ORBit_POAObject_invoke_incoming_request
    at poa.c line 1421
  • #20 giop_thread_queue_process
    at giop.c line 771
  • #21 giop_recv_buffer_get
    at giop-recv-buffer.c line 713
  • #22 ORBit_small_invoke_stub
    at orbit-small.c line 658
  • #23 Accessibility_EventListener_notifyEvent
    at Accessibility-stubs.c line 422
  • #24 spi_atk_emit_eventv
    at bridge.c line 794
  • #25 spi_atk_bridge_state_event_listener
    at bridge.c line 1001
  • #26 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #27 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #28 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #29 atk_gobject_accessible_dispose
    at atkgobjectaccessible.c line 142
  • #30 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #31 g_datalist_id_set_data_full
    from /usr/lib64/libglib-2.0.so.0
  • #32 gnome_canvas_item_dispose
    at gnome-canvas.c line 354
  • #33 g_object_run_dispose
    from /usr/lib64/libgobject-2.0.so.0
  • #34 e_week_view_remove_event_cb
    at e-week-view.c line 1941
  • #35 model_rows_deleted_cb
    at e-week-view.c line 419
  • #36 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #37 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #38 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #39 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #40 e_cal_view_objects_added_cb
    at e-cal-model.c line 1435
  • #41 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #42 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #43 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #44 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #45 objects_added_cb
    at e-cal-view.c line 79
  • #46 g_closure_invoke
    from /usr/lib64/libgobject-2.0.so.0
  • #47 ??
    from /usr/lib64/libgobject-2.0.so.0
  • #48 g_signal_emit_valist
    from /usr/lib64/libgobject-2.0.so.0
  • #49 g_signal_emit
    from /usr/lib64/libgobject-2.0.so.0
  • #50 impl_notifyObjectsAdded
    at e-cal-view-listener.c line 136
  • #51 ORBit_small_invoke_adaptor
    at orbit-small.c line 844
  • #52 ORBit_POAObject_handle_request
    at poa.c line 1351
  • #53 ORBit_POAObject_invoke_incoming_request
    at poa.c line 1421
  • #54 giop_thread_queue_process
    at giop.c line 771
  • #55 giop_mainloop_handle_input
    at giop.c line 461
  • #56 g_main_context_dispatch
    from /usr/lib64/libglib-2.0.so.0
  • #57 ??
    from /usr/lib64/libglib-2.0.so.0
  • #58 g_main_loop_run
    from /usr/lib64/libglib-2.0.so.0
  • #59 bonobo_main
    at bonobo-main.c line 311
  • #60 main
    at main.c line 782


Please let me know what other information I can provide to help track this down.
Comment 11 Milan Crha 2008-08-07 12:26:10 UTC
Thanks, this information is enough, it's really in the way I suspected, and as Tobias mentioned above. The workaround is quite clear, but it will crash somewhere else for sure. Can you try to turn off your assistive technologies? Maybe it will help a bit. (I see there a spi and atk involved, so curious how much they are involved in the crash itself.)
Comment 12 Dan Elder 2008-08-11 22:19:00 UTC
I can't thank you enough for the suggestion of turning off the assistive technologies, I haven't been able to get a calendar crash since.  I didn't realize they were turned on and don't need them so this is a perfect workaround for me.  I've had the calendar component running for 3 days now without a crash since I disabled atk/spi so this definitely appears to be the culprit.
Comment 13 Kandepu Prasad 2008-08-20 06:23:46 UTC
Is this a dup of bug 487749?
Comment 14 Milan Crha 2008-08-20 09:05:31 UTC
(In reply to comment #13)
> Is this a dup of bug 487749?

I miss involvement of the atk/spi calls in that bug, so I guess it isn't a dupe. It's possible it's related, though.

Comment 15 Philip Withnall 2008-09-22 22:23:47 UTC
*** Bug 551776 has been marked as a duplicate of this bug. ***
Comment 16 Milan Crha 2009-03-27 17:21:20 UTC
*** Bug 575792 has been marked as a duplicate of this bug. ***
Comment 17 Milan Crha 2009-03-27 17:40:26 UTC
From the latest bug (which I really wouldn't expect on 2.24):
...
  • #8 <signal handler called>
  • #9 e_week_view_find_event_from_uid at e-week-view.c:3715
  • #10 model_comps_deleted_cb at e-week-view.c:445 ...
  • #41 Accessibility_EventListener_notifyEvent ...
  • #58 e_week_view_remove_event_cb at e-week-view.c:1977
  • #59 model_comps_deleted_cb at e-week-view.c:446 ...

so the model_comps_deleted_cb is called twice, in the same thread and the lower call of e_week_view_remove_event_cb is in the middle of the removal, thus after event->comp_data = NULL, which causes crash in e_week_view_find_event_from_uid.

Turning off accessibility usually helps as a workaround.
Comment 18 Milan Crha 2009-03-27 20:09:06 UTC
Created attachment 131520 [details] [review]
proposed evo patch

for evolution;

This fixes it for me. It depends on data too, though I do not have public test data here, but steps are usually like this:
a) open evolution, close evolution (to have eds running with cached objects)
b) open evolution in mailer (evolution --component mail)
c) go to calendar view (Ctrl+3)
Once it crashes, three times+ it doesn't.
The code changes are preventing the state shown in the backtrace, thus it doesn't crash here with the patch.
Comment 19 André Klapper 2009-04-30 14:21:33 UTC
can this get a review?
Comment 20 André Klapper 2009-04-30 14:21:39 UTC
*** Bug 580881 has been marked as a duplicate of this bug. ***
Comment 21 André Klapper 2009-05-03 21:26:37 UTC
*** Bug 581219 has been marked as a duplicate of this bug. ***
Comment 22 Fabio Durán Verdugo 2009-05-04 12:28:05 UTC
*** Bug 581273 has been marked as a duplicate of this bug. ***
Comment 23 Chenthill P 2009-07-29 20:26:22 UTC
Am not sure how this patch would solve the issue. If its a recursive call in the same thread, will the second mutex lock on the same thread not cause a hang ?
Comment 24 Milan Crha 2009-07-30 13:15:12 UTC
(In reply to comment #23)
> If its a recursive call in the same thread, will the second mutex lock on
> the same thread not cause a hang?

Nope, the lock only guards access to new priv members, when the recursive call is done the lock is not held.

> Am not sure how this patch would solve the issue.

Basically, if the recursive call is detected, then the notification of the change is kept to the first call, it is not done in the inner calls. I'm not sure how to explain it better.
Comment 25 Chenthill P 2009-07-31 16:13:29 UTC
I see that the patch fixes the issue. But am not comfortable in assuming when a thread can be interrupted, in this case i guess we are assuming its interrupted only when process_fun is called. But queuing these operations in threads might cause problems in updating the UI. 

Please commit the patch and prolly we can change this if we find a better way to fix it.
Comment 26 Milan Crha 2009-07-31 16:54:02 UTC
Created commit bb0d4f9 in evo master (2.27.6+)
Comment 27 Milan Crha 2009-08-20 15:17:30 UTC
*** Bug 487749 has been marked as a duplicate of this bug. ***
Comment 28 Milan Crha 2009-08-20 15:18:36 UTC
*** Bug 588868 has been marked as a duplicate of this bug. ***