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 514263 - Evolution crashes when not logged in to several IMAP accounts
Evolution crashes when not logged in to several IMAP accounts
Status: RESOLVED DUPLICATE of bug 330728
Product: evolution
Classification: Applications
Component: Mailer
2.26.x (obsolete)
Other FreeBSD
: Normal critical
: ---
Assigned To: evolution-mail-maintainers
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2008-02-04 10:58 UTC by Wayne Sierke
Modified: 2010-08-23 04:18 UTC
See Also:
GNOME target: ---
GNOME version: 2.25/2.26


Attachments
gdb capture (expurgated) (46.93 KB, text/plain)
2009-05-18 05:47 UTC, Wayne Sierke
Details
gdb capture (expurgated) with G_DEBUG=fatal_criticals (54.18 KB, text/plain)
2009-05-20 05:17 UTC, Wayne Sierke
Details

Description Wayne Sierke 2008-02-04 10:58:34 UTC
Steps to reproduce:
1. Evolution is configured with 8 IMAP accounts on a courier-imap server
2. Log in to one account, Cancel the login for the others
3. After a while, usually around half-day to a day, evolution crashes


Stack trace:
gdb session:
      1 GNU gdb 6.1.1 [FreeBSD]
      2 Copyright 2004 Free Software Foundation, Inc.
      3 GDB is free software, covered by the GNU General Public License, and you are
      4 welcome to change it and/or distribute copies of it under certain conditions.
      5 Type "show copying" to see the conditions.
      6 There is absolutely no warranty for GDB.  Type "show warranty" for details.
      7 This GDB was configured as "i386-marcel-freebsd"...
      8 (gdb) run
      9 Starting program: /usr/local/bin/evolution 
     10 [New LWP 100213]
     11 [New Thread 0x29901100 (LWP 100213)]
     12 CalDAV Eplugin starting up ...
     13 [New Thread 0x299a5100 (LWP 100162)]
     14 [New Thread 0x29d55500 (LWP 100167)]
     15 [New Thread 0x29d55600 (LWP 100172)]
     16 [New Thread 0x29d55700 (LWP 100174)]
     17 [New Thread 0x29d55c00 (LWP 100183)]
     18 [Thread 0x29d55c00 (LWP 100183) exited]
     19 [New Thread 0x2b520000 (LWP 100183)]
     20 [New Thread 0x2b520e00 (LWP 100184)]
     21 [Thread 0x2b520e00 (LWP 100184) exited]
     22 [New Thread 0x2b577e00 (LWP 100184)]
     23 [New Thread 0x2b711500 (LWP 100195)]
     24 [New Thread 0x2bae1800 (LWP 100199)]
     25 [New Thread 0x2bae1900 (LWP 100200)]
     26 [New Thread 0x2bae1b00 (LWP 100204)]
     27 [Thread 0x2bae1800 (LWP 100199) exited]
     28 [Thread 0x2bae1900 (LWP 100200) exited]
     29 [Thread 0x2bae1b00 (LWP 100204) exited]
     30 [New Thread 0x29d55c00 (LWP 100204)]
     31 [New Thread 0x2b520e00 (LWP 100199)]
     32 [Thread 0x2b520e00 (LWP 100199) exited]
     33 [New Thread 0x2bae1800 (LWP 100199)]
     34 [New Thread 0x2bae1900 (LWP 100200)]
     35 [Thread 0x2bae1900 (LWP 100200) exited]
     36 [Thread 0x2bae1800 (LWP 100199) exited]
...
    431 [New Thread 0x2b520e00 (LWP 100199)]
    432 [Thread 0x2b520e00 (LWP 100199) exited]
    433 (evolution:10552): e-data-server-DEBUG: Loading categories from "/home/ws/.evolution/categories.xml"
    434 (evolution:10552): e-data-server-DEBUG: Loaded 29 categories
    435 [New Thread 0x2bae1800 (LWP 100199)]
    436 [New Thread 0x2bae1900 (LWP 100218)]
    437 [Thread 0x2bae1900 (LWP 100218) exited]
...
   3880 [New Thread 0x2bae1b00 (LWP 100246)]
   3881 [Thread 0x2bae1b00 (LWP 100246) exited]
   3882 
   3883 Program received signal SIGSEGV, Segmentation fault.
   3884 [Switching to Thread 0x2b711500 (LWP 100195)]
   3885 0x00000002 in ?? ()
   3886 (gdb) thread apply all bt
   3887 
   3888 Thread 217 (Thread 0x2bae1800 (LWP 100199)):
   3889 #0  0x297ae92b in poll () from /lib/libc.so.7
   3890 #1  0x2971e7e2 in poll () from /lib/libthr.so.3
   3891 #2  0x29586db5 in g_main_context_check () from /usr/local/lib/libglib-2.0.so.0
   3892 #3  0x29587167 in g_main_loop_run () from /usr/local/lib/libglib-2.0.so.0
   3893 #4  0x282c7538 in startup_mainloop (arg=0x0) at e-book.c:3767
   3894 #5  0x295a707f in g_thread_create_full () from /usr/local/lib/libglib-2.0.so.0
   3895 #6  0x2971fac7 in pthread_getprio () from /lib/libthr.so.3
   3896 #7  0xbf4f9fec in ?? ()
   3897 
   3898 Thread 70 (Thread 0x2bca4100 (LWP 100183)):
   3899 #0  0x297ae92b in poll () from /lib/libc.so.7
   3900 #1  0x2971e7e2 in poll () from /lib/libthr.so.3
   3901 #2  0x29586db5 in g_main_context_check () from /usr/local/lib/libglib-2.0.so.0
   3902 #3  0x29587167 in g_main_loop_run () from /usr/local/lib/libglib-2.0.so.0
   3903 #4  0x28c737d8 in link_io_thread_fn () from /usr/local/lib/libORBit-2.so.0
   3904 #5  0x295a707f in g_thread_create_full () from /usr/local/lib/libglib-2.0.so.0
   3905 #6  0x2971fac7 in pthread_getprio () from /lib/libthr.so.3
   3906 #7  0x00000000 in ?? ()
   3907 
   3908 Thread 15 (Thread 0x29d55c00 (LWP 100204)):
   3909 #0  0x29770307 in _umtx_op () from /lib/libc.so.7
   3910 #1  0x29727969 in pthread_cleanup_push () from /lib/libthr.so.3
   3911 #2  0x297261ec in pthread_cond_init () from /lib/libthr.so.3
   3912 #3  0x2972631d in pthread_cond_wait () from /lib/libthr.so.3
   3913 #4  0x295660d2 in g_async_queue_sort () from /usr/local/lib/libglib-2.0.so.0
   3914 #5  0x2854ac50 in e_msgport_wait (msgport=0x29d279c0) at e-msgport.c:684
   3915 #6  0x2854b595 in thread_dispatch (din=0x29d83060) at e-msgport.c:1048
   3916 #7  0x2971fac7 in pthread_getprio () from /lib/libthr.so.3
   3917 #8  0xbf3f8fec in ?? ()
   3918 
   3919 Thread 11 (Thread 0x2b711500 (LWP 100195)):
   3920 #0  0x00000002 in ?? ()
   3921 
   3922 Thread 10 (Thread 0x2b577e00 (LWP 100184)):
   3923 #0  0x297ae92b in poll () from /lib/libc.so.7
   3924 #1  0x2971e7e2 in poll () from /lib/libthr.so.3
   3925 #2  0x2856fddf in PR_Poll () from /usr/local/lib/libplds4.so.1
   3926 #3  0x28269875 in stream_read (stream=0x2b566800, 
   3927     buffer=0x29dfc400 "A02488 OK STORE completed.\r\n5 OK FETCH completed.\r\nRecent)\r\n* OK [PERMANENTFLAGS (\\Draft \\Answered \\Flagged \\Del   3927 eted \\Seen)] Limited\r\n* 297 EXISTS\r\n* 0 RECENT\r\n* OK [UIDVALIDITY 1183781170] Ok\r\n* OK ["..., n=1024) at camel-tcp-stream-ssl.c:385
   3928 #4  0x28324242 in camel_stream_read (stream=0x2b566800, 
   3929     buffer=0x29dfc400 "A02488 OK STORE completed.\r\n5 OK FETCH completed.\r\nRecent)\r\n* OK [PERMANENTFLAGS (\\Draft \\Answered \\Flagged \\Del   3929 eted \\Seen)] Limited\r\n* 297 EXISTS\r\n* 0 RECENT\r\n* OK [UIDVALIDITY 1183781170] Ok\r\n* OK ["..., n=1024) at camel-stream.c:98
   3930 #5  0x28321622 in camel_stream_buffer_gets (sbf=0x29de1e00, buf=0xbf2f7994 "", max=1024) at camel-stream-buffer.c:411
   3931 #6  0x2b452534 in camel_imap_store_readline (store=0x29dad800, dest=0xbf2f7dd0, ex=0x2c7a649c) at camel-imap-store.c:3029
   3932 #7  0x2b440bcd in camel_imap_command_response (store=0x29dad800, response=0xbf2f7e10, ex=0x2c7a649c) at camel-imap-command.c:300
   3933 #8  0x2b440f04 in imap_read_response (store=0x29dad800, ex=0x2c7a649c) at camel-imap-command.c:376
   3934 #9  0x2b44063b in camel_imap_command (store=0x29dad800, folder=0x2993c614, ex=0x2c7a649c, fmt=0x0) at camel-imap-command.c:118
   3935 #10 0x2b44306b in imap_refresh_info (folder=0x2993c614, ex=0x2c7a649c) at camel-imap-folder.c:527
   3936 #11 0x28239b99 in disco_refresh_info (folder=0x2993c614, ex=0x2c7a649c) at camel-disco-folder.c:269
   3937 #12 0x2824b455 in camel_folder_refresh_info (folder=0x2993c614, ex=0x2c7a649c) at camel-folder.c:302
   3938 #13 0x2b3b5650 in refresh_folder_refresh (mm=0x2c7a6480) at mail-ops.c:1585
   3939 #14 0x2b3b1148 in mail_msg_received (e=0x29d7afb0, msg=0x2c7a6480, data=0x0) at mail-mt.c:582
   3940 #15 0x2854b45f in thread_received_msg (e=0x29d7afb0, m=0x2c7a6480) at e-msgport.c:1005
   3941 #16 0x2854b64d in thread_dispatch (din=0x29d7afb0) at e-msgport.c:1072
   3942 #17 0x2971fac7 in pthread_getprio () from /lib/libthr.so.3
   3943 #18 0x00000000 in ?? ()
   3944 
   3945 Thread 6 (Thread 0x29d55700 (LWP 100174)):
   3946 #0  0x29770307 in _umtx_op () from /lib/libc.so.7
   3947 #1  0x29727969 in pthread_cleanup_push () from /lib/libthr.so.3
   3948 #2  0x297261ec in pthread_cond_init () from /lib/libthr.so.3
   3949 #3  0x2972631d in pthread_cond_wait () from /lib/libthr.so.3
   3950 #4  0x295660d2 in g_async_queue_sort () from /usr/local/lib/libglib-2.0.so.0
   3951 #5  0x2854ac50 in e_msgport_wait (msgport=0x29d279c0) at e-msgport.c:684
   3952 #6  0x2854b595 in thread_dispatch (din=0x29d83060) at e-msgport.c:1048
   3953 #7  0x2971fac7 in pthread_getprio () from /lib/libthr.so.3
   3954 #8  0x00000000 in ?? ()
   3955 
   3956 Thread 5 (Thread 0x29d55600 (LWP 100172)):
   3957 #0  0x29770307 in _umtx_op () from /lib/libc.so.7
   3958 #1  0x29727969 in pthread_cleanup_push () from /lib/libthr.so.3
   3959 #2  0x297261ec in pthread_cond_init () from /lib/libthr.so.3
   3960 #3  0x2972631d in pthread_cond_wait () from /lib/libthr.so.3
   3961 #4  0x295660d2 in g_async_queue_sort () from /usr/local/lib/libglib-2.0.so.0
   3962 #5  0x2854ac50 in e_msgport_wait (msgport=0x29d279c0) at e-msgport.c:684
   3963 #6  0x2854b595 in thread_dispatch (din=0x29d83060) at e-msgport.c:1048
   3964 #7  0x2971fac7 in pthread_getprio () from /lib/libthr.so.3
   3965 #8  0x00000000 in ?? ()
   3966 
   3967 Thread 4 (Thread 0x29d55500 (LWP 100167)):
   3968 #0  0x29770307 in _umtx_op () from /lib/libc.so.7
   3969 #1  0x29727969 in pthread_cleanup_push () from /lib/libthr.so.3
   3970 #2  0x297261ec in pthread_cond_init () from /lib/libthr.so.3
   3971 #3  0x2972631d in pthread_cond_wait () from /lib/libthr.so.3
   3972 #4  0x295660d2 in g_async_queue_sort () from /usr/local/lib/libglib-2.0.so.0
   3973 #5  0x2854ac50 in e_msgport_wait (msgport=0x29d279c0) at e-msgport.c:684
   3974 #6  0x2854b595 in thread_dispatch (din=0x29d83060) at e-msgport.c:1048
   3975 #7  0x2971fac7 in pthread_getprio () from /lib/libthr.so.3
   3976 #8  0x00000000 in ?? ()
   3977 
   3978 Thread 3 (Thread 0x299a5100 (LWP 100162)):
   3979 #0  0x29770307 in _umtx_op () from /lib/libc.so.7
   3980 #1  0x29727969 in pthread_cleanup_push () from /lib/libthr.so.3
   3981 #2  0x297261ec in pthread_cond_init () from /lib/libthr.so.3
   3982 #3  0x2972631d in pthread_cond_wait () from /lib/libthr.so.3
   3983 #4  0x295660d2 in g_async_queue_sort () from /usr/local/lib/libglib-2.0.so.0
   3984 #5  0x2854ac50 in e_msgport_wait (msgport=0x29d279c0) at e-msgport.c:684
   3985 #6  0x2854b595 in thread_dispatch (din=0x29d83060) at e-msgport.c:1048
   3986 #7  0x2971fac7 in pthread_getprio () from /lib/libthr.so.3
   3987 #8  0x00000000 in ?? ()
   3988 
   3989 Thread 2 (Thread 0x29901100 (LWP 100213)):
   3990 #0  0x29770307 in _umtx_op () from /lib/libc.so.7
   3991 #1  0x297278dd in pthread_cleanup_push () from /lib/libthr.so.3
   3992 #2  0x29723aca in pthread_mutex_unlock () from /lib/libthr.so.3
   3993 #3  0x2854b92d in e_thread_put (e=0x29d7af60, msg=0x2c7b7500) at e-msgport.c:1152
   3994 #4  0x2b3b5caa in mail_get_messagex (folder=0x2993c614, uid=0x2e7c2298 "36358", done=0x2b37ba60 <emfv_list_done_message_selected>, data=0x2b51c00   3994 0, thread=0x29d7af60)
   3995     at mail-ops.c:1836
   3996 #5  0x2b37befd in emfv_message_selected_timeout (data=0x2b51c000) at em-folder-view.c:2424
   3997 #6  0x29584176 in g_source_get_current_time () from /usr/local/lib/libglib-2.0.so.0
   3998 #7  0x29583a06 in g_main_context_dispatch () from /usr/local/lib/libglib-2.0.so.0
   3999 #8  0x29586d82 in g_main_context_check () from /usr/local/lib/libglib-2.0.so.0
   4000 #9  0x29587167 in g_main_loop_run () from /usr/local/lib/libglib-2.0.so.0
   4001 #10 0x28b99f13 in bonobo_main () from /usr/local/lib/libbonobo-2.so.0
   4002 #11 0x0805f916 in main (argc=1, argv=0xbfbfe9c0) at main.c:602
   4003 #0  0x00000002 in ?? ()
   4004 (gdb) quit
   4005 The program is running.  Exit anyway? (y or n) 


Other information:
Some other symptoms witnessed prior to crashing include:
 - opening a new message fails displaying "Unable to retrieve message/Unable to retrieve message: Bad file descriptor". Clicking on an already retrieved message, then returning to the previous message then displays the message correctly.
 - often the crash would happen upon clicking Inbox after returning to the computer and seeing a 'new message' notification.

Following are excerpts from a CAMEL_DEBUG=all log (not from same session as the included gdb):

Get a set of these periodically for each account for which the login was cancelled:
   2040 CamelException.set(0xbf7fcf00, 3, 'User canceled operation.')
   2041 CamelException.set(0xbf7fcf00, 3, 'You did not enter a password.')
   2042 CamelException.setv(0x0, 303, 'Server unexpectedly disconnected: Unknown error')

%grep "CamelException.*'Server unexpectedly disconnected" $thislog | wc -l
    2152


When evo crashes the log usually seems to end with a Literal and in these cases often (always?) preceded by the pair of "Failed to cache" errors:

 315022 CamelException.setv(0x0, 2, 'Failed to cache : No such file or directory')
 315023 CamelException.setv(0x2b4c88dc, 2, 'Failed to cache : No such file or directory')
 315024 Literal: -->X-Envelope-From: owner-freebsd-stable@freebsd.org

the remainder of the log contains a substantial portion of this message but not the complete message.

Also get numerous instances of those "Failed to cache" errors (always in pairs).

%grep -E "CamelException.*'Failed to cache" $thislog | wc -l
     174
Comment 1 Wayne Sierke 2009-05-17 14:33:43 UTC
I still see this problem on 2.26.1.1.

If someone can direct me as to which further information will be most useful in tracking this down I'll endeavour to provide it.
Comment 2 Tobias Mueller 2009-05-17 14:45:13 UTC
   3883 Program received signal SIGSEGV, Segmentation fault.
   3884 [Switching to Thread 0x2b711500 (LWP 100195)]
   3885 0x00000002 in ?? ()

   3919 Thread 11 (Thread 0x2b711500 (LWP 100195)):
   3920 #0  0x00000002 in ?? ()


Maybe you can try to get a better stacktrace?
Comment 3 Wayne Sierke 2009-05-18 05:47:44 UTC
Created attachment 134847 [details]
gdb capture (expurgated)

I just tried gdb again with current version (2.26.1.1) but output is similar:

12830 Program received signal SIGSEGV, Segmentation fault.
12831 [Switching to Thread 0x29c02250 (LWP 100311)]
12832 0x00000000 in ?? ()
12833 (gdb) thread apply all bt
12834 

12859 
12860 Thread 4531 (Thread 0x29c02250 (LWP 100311)):
12861 #0  0x00000000 in ?? ()
12862 

I've attached an expurgated copy of the gdb session in case someone sees a clue in it - the bulk of the lines like those below have been removed for easier perusal:-

e-data-server-ui-Message: Unable to find password(s) in keyring (Keyring reports: No matching results)
e-data-server-ui-Message: Key file does not have group 'Passwords-Mail'
[New Thread 0x29c02360 (LWP 100317)]
[Thread 0x29c02360 (LWP 100317) exited]

What can I try to get something useful for analysis?
Comment 4 Tobias Mueller 2009-05-18 23:07:56 UTC
Hey! Thanks for being so responsive :)


2715 (evolution:6825): e-table-CRITICAL **: ect_check: assertion `(gaec->cell_view != NULL)' failed

Those look bad. I'd set G_DEBUG=fatal_criticals and obtain a stacktrace again. Those criticals shouldn't happen and attempted to save you from crashing.

You can also set E2K_DEBUG to 4 to increase the log level.
Comment 5 Wayne Sierke 2009-05-20 05:17:59 UTC
Created attachment 135000 [details]
gdb capture (expurgated) with G_DEBUG=fatal_criticals

Another gdb capture (expurgated), this time with G_DEBUG=fatal_criticals and evolution recompiled with symbols (freebsd port compiled with WITH_DEBUG).
Comment 6 Akhil Laddha 2010-08-23 04:18:27 UTC
Please disable accessibility to avoid this particular crash.

*** This bug has been marked as a duplicate of bug 330728 ***