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 615086 - evolution process termination at fetching mail operation
evolution process termination at fetching mail operation
Status: RESOLVED WONTFIX
Product: evolution-mapi
Classification: Applications
Component: Mail
0.30.x
Other Linux
: High critical
: ---
Assigned To: evolution-mapi-maint
evolution-mapi-maint
: 615947 621154 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2010-04-07 17:50 UTC by Pavel Chjen
Modified: 2011-05-19 13:16 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
(gdb) trace apply all bt output (8.19 KB, text/plain)
2010-04-09 15:28 UTC, Pavel Chjen
Details
valgrind output (11.95 KB, text/plain)
2010-06-11 15:30 UTC, David Ronis
Details

Description Pavel Chjen 2010-04-07 17:50:23 UTC
Compiled from source evolution-2.30.0.1, evolution-mapi-0.30.0
OS Ubuntu  Karmic 9.10.
Headers and libs for libmapi used from  openchange-0.9-COCHRANE source.
when running in console it got errors like:
 PR_DISPLAY_TYPE_ERROR: 0x8004010f
 PR_OBJECT_TYPE_ERROR: 0x8004010f
 PR_ORG_ADDR_TYPE_ERROR: 0x8004010f
 PR_ORG_EMAIL_ADDR_ERROR: 0x8004010f
 PR_OBJECT_TYPE_ERROR: 0x8004010f
 PR_ORG_ADDR_TYPE_ERROR: 0x8004010f
I omitted other outputs because most of it contain email private addresses.
Comment 1 Pavel Chjen 2010-04-07 17:52:02 UTC
Last message in output is "Aborted". Like without returning "segmentation fault"
Comment 2 Akhil Laddha 2010-04-08 05:39:10 UTC
Thanks for taking the time to report this bug.
Without a stack trace from the crash it's very hard to determine what caused it.
Can you get us a stack trace? Please see http://live.gnome.org/GettingTraces for more information on how to do so. Thanks in advance!

If you don't bug-buddy pop up when application crash, you can get traces using gdb.

see http://live.gnome.org/GettingTraces/Details#gdb-not-yet-running for details
about how to do this
Comment 3 Pavel Chjen 2010-04-09 15:28:21 UTC
Created attachment 158300 [details]
(gdb) trace apply all bt output
Comment 4 Pavel Chjen 2010-04-09 15:29:18 UTC
I made trace see attachment in message above.
Comment 5 Pavel Chjen 2010-04-09 18:26:50 UTC
when I repeated 'run' command in gdb shell, after executing code, window of evolution was frozen, and gdb prompted 'InboProgram received signal SIGABRT, Aborted'
I repeated it again and got another prompt 'Program received signal SIGSEGV, Segmentation fault.'
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb07c6b70 (LWP 10688)]
0xb6b3f071 in memcpy () from /lib/tls/i686/cmov/libc.so.6
(gdb) thread apply all bt

Thread 20 (Thread 0xb07c6b70 (LWP 10688))

  • #0 memcpy
    from /lib/tls/i686/cmov/libc.so.6
  • #1 _talloc_memdup
    from /usr/lib/libtalloc.so.1
  • #2 pull_emsmdb_property
    at libmapi/emsmdb.c line 645
  • #3 emsmdb_get_SRow
    at libmapi/emsmdb.c line 878
  • #4 OpenMessage
    at libmapi/IStoreFolder.c line 143
  • #5 exchange_mapi_connection_fetch_items
    at exchange-mapi-connection.c line 1315
  • #6 camel_mapi_folder_fetch_summary
  • #7 mapi_refresh_folder
    at camel-mapi-folder.c line 1129
  • #8 mapi_refresh_info
    at camel-mapi-folder.c line 166
  • #9 camel_folder_refresh_info
    at camel-folder.c line 352
  • #10 refresh_folders_exec
    at mail-send-recv.c line 890
  • #11 mail_msg_proxy
    at mail-mt.c line 471
  • #12 ??
    from /lib/libglib-2.0.so.0
  • #13 ??
    from /lib/libglib-2.0.so.0
  • #14 start_thread
    from /lib/tls/i686/cmov/libpthread.so.0
  • #15 clone
    from /lib/tls/i686/cmov/libc.so.6

Comment 6 Akhil Laddha 2010-05-26 08:30:51 UTC
Thanks for the traces.
Comment 7 Akhil Laddha 2010-06-10 03:48:06 UTC
*** Bug 621154 has been marked as a duplicate of this bug. ***
Comment 8 Milan Crha 2010-06-11 14:11:41 UTC
Thanks for a bug report. I didn't see this myself (yet), but from a duplicate bug I see that it's reproducible also with the latest openchange, which is not good.

I would like to ask you to try to reproduce this under valgrind, whether it'll show something. Also, is it possible it depends on some special message, but other messages are opened just fine?

You can delete your local message cache in
~/.evolution/mail/mapi/<account>/folders/
when evolution is off to for a refetch of the message.
Comment 9 David Ronis 2010-06-11 15:30:45 UTC
Created attachment 163396 [details]
valgrind output

I purged the files as per Milan's last comment and reran under valgrind.  I wasn't able to reproduce the problem (although the GAL still doesn't work); my MAPI mail accounts behave as I'd expect.
Comment 10 Akhil Laddha 2010-06-14 03:51:44 UTC
*** Bug 615947 has been marked as a duplicate of this bug. ***
Comment 11 Milan Crha 2010-06-14 15:25:19 UTC
> Conditional jump or move depends on uninitialised value(s)
>    at 0xC57F5D6: mapi_response_destructor (emsmdb.c:273)
>    by 0xCB8C433: _talloc_free_internal (talloc.c:600)

Hmm, apart of memory issues within header_decode_atom called from camel_header_contentid_decode, I see only one issue coming from openchange, the above one. I do not know openchange good enough to be able to tell for sure whether it's a cause of the issue or not, I hoped it'll claim something in that OpenMessage call, somewhere in the above backtrace.

With respect of those camel invalid reads, it would be great if you can find the value for the Content-ID header it was trying to parse, the only thing I know about it is that it contained one of ".[]" after the '@' letter, but nothing more. Feel free to ping me on a guide for a debugging hint. Thanks.
Comment 12 Akhil Laddha 2010-10-19 07:52:53 UTC
Do we want to keep the bug open, there is no update since long time ?
Comment 13 Milan Crha 2010-10-19 09:35:44 UTC
Probably not, unless David or Pavel have any update on this, the best with 0.32.0.
Comment 14 David Ronis 2010-10-19 14:58:58 UTC
I just tried activating my mapi account (in the git/master of about 1 week ago).   Bugbuddy pops up and I get:

Distribution: Slackware Slackware 12.2.0
Gnome Release: 2.32.0 2010-09-27 (GARNOME)
BugBuddy Version: 2.32.0

System: Linux 2.6.34-rc5-ge520683 #2 SMP PREEMPT Tue Jun 8 13:13:01 EDT 2010 i686
X Vendor: The X.Org Foundation
X Vendor Release: 10900000
Selinux: No
Accessibility: Disabled
GTK+ Theme: Default
Icon Theme: gnome
GTK+ Modules: canberra-gtk-module, gnomesegvhandler

Memory status: size: 260075520 vsize: 260075520 resident: 63660032 share: 30474240 rss: 63660032 rss_rlim: 18446744073709551615
CPU usage: start_time: 1287499509 rtime: 2190 utime: 1750 stime: 440 cutime:63 cstime: 7 timeout: 0 it_real_value: 0 frequency: 100

Backtrace was generated from '/opt/garnome-svn-2.31.92/bin/evolution'

[Thread debugging using libthread_db enabled]
[New Thread 0xace9fb90 (LWP 32360)]
[New Thread 0xaae2fb90 (LWP 32359)]
[New Thread 0xa7df6b90 (LWP 32357)]
[New Thread 0xac69fb90 (LWP 32035)]
[New Thread 0xad8b7b90 (LWP 32034)]
[New Thread 0xae119b90 (LWP 32019)]
[New Thread 0xae919b90 (LWP 32018)]
[New Thread 0xb59c8b90 (LWP 32013)]
0xb5df2f74 in __lll_lock_wait () from /lib/libpthread.so.0

Thread 4 (Thread 0xa7df6b90 (LWP 32357))

  • #0 waitpid
    from /lib/libpthread.so.0
  • #1 g_spawn_sync
    at gspawn.c line 392
  • #2 g_spawn_command_line_sync
    at gspawn.c line 706
  • #3 run_bug_buddy
    at gnome-segvhanlder.c line 240
  • #4 bugbuddy_segv_handle
    at gnome-segvhanlder.c line 191
  • #5 <signal handler called>
  • #6 raise
    from /lib/libc.so.6
  • #7 abort
    from /lib/libc.so.6
  • #8 talloc_abort
    at ../talloc.c line 199
  • #9 talloc_abort_unknown_value
    at ../talloc.c line 223
  • #10 talloc_chunk_from_ptr
    at ../talloc.c line 242
  • #11 _talloc_free
    at ../talloc.c line 1126
  • #12 string_set
    at ../param/loadparm.c line 1026
  • #13 set_variable
    at ../param/loadparm.c line 1706
  • #14 lpcfg_do_global_parameter
    at ../param/loadparm.c line 1769
  • #15 loadparm_init
    at ../param/loadparm.c line 2332
  • #16 MAPIInitialize
    at libmapi/cdo_mapi.c line 237
  • #17 ensure_mapi_init_called
    at exchange-mapi-connection.c line 3606
  • #18 mapi_profile_load
    at exchange-mapi-connection.c line 3662
  • #19 exchange_mapi_connection_new
    at exchange-mapi-connection.c line 365
  • #20 mapi_auth_loop
    at camel-mapi-store.c line 1600
  • #21 mapi_connect_sync
    at camel-mapi-store.c line 1641
  • #22 mapi_store_get_folder_info_sync
    at camel-mapi-store.c line 913
  • #23 camel_store_get_folder_info_sync
    at camel-store.c line 2323
  • #24 get_folderinfo_exec
    at mail-ops.c line 1147
  • #25 mail_msg_proxy
    at mail-mt.c line 475
  • #26 g_thread_pool_thread_proxy
    at gthreadpool.c line 319
  • #27 g_thread_create_proxy
    at gthread.c line 1897
  • #28 start_thread
    from /lib/libpthread.so.0
  • #29 clone
    from /lib/libc.so.6

	Inferior 1 [process 32011] will be detached.

Quit anyway? (y or n) [answered Y; input not from terminal]
Comment 15 Milan Crha 2010-10-19 16:00:06 UTC
Hmm, crash inside talloc and MAPIInitialize. I didn't see crash inside MAPIInitialize for quite some time now. Either the mapi-profiles.ldb is borked, which doesn't seem to be, or something else. What is your openchange revision, please?
Comment 16 David Ronis 2010-10-19 16:07:16 UTC
svnversion shows 2200, but that is probably newer than what I'm running.   (I'm in the process of buiding gome 2.91.1 and my build scripts first update everything, moreover, the build is not going well).
Comment 17 Akhil Laddha 2010-12-10 03:55:27 UTC
David, did you get the crash again with updated build ?
Comment 18 Pavel Chjen 2010-12-10 14:06:13 UTC
I mived to Ubuntu 10.10 Maveric and compiled 2.32.1 evolution. in evolution-mapi-2.32.1 I am not observing same behavior.
Comment 19 Pavel Chjen 2010-12-10 14:12:44 UTC
i think 2.32.1 is fixing that issue. 2.32.0 - had issues sometimes with fetching messages from exchange but not crush evolution completely. 2.32.1 fix my bugs.
And also forgot to mention important thing - compiled mapi with using compiled from source openchange-0.10-NOMAD libs.
Comment 20 Pavel Chjen 2010-12-10 14:21:00 UTC
also openchange-0.10-NOMAD comile smoother then 0.9. I had less trouble to fix dependencies. Plus 0.9 was nevere normally finish compilation except when I did make installib only libs were nomrally compiled and installed. with 0.10 full compilation going well - may be openchange code also affect mapi. But 0.10 is fresh as 2.32 I think.
Comment 21 Milan Crha 2010-12-10 14:39:14 UTC
(In reply to comment #20)
> may be openchange code also affect mapi. But 0.10 is fresh as 2.32 I think.

It definitely is affecting mapi. Even it is only 0.9 to 0.10, then those two versions are about a year (or more) from each other, and there landed quite many fixes in the time between these two versions of openchange.
Comment 22 Justin Bassignani 2011-01-10 19:29:36 UTC
I followed this up from Bug 650352, noticed that the bug is in the RESOLVED FIXED state although segfaults are still occurring with evolution 2.32.1-1 and evolution-mapi 0.32.1-1. Occasionally a SIG6 is thrown, but it typically drops SIG11. This occurs every time I try to synchronize Evolution with corporate Exchange server - all subfolders can sync without issue, but Inbox and Sent both crash when synchronizing. This seems to happen at the same point every time, but I can't pinpoint if a particular message is triggering it. I can recreate the issue and submit more traces if it will help troubleshoot.
Comment 23 Milan Crha 2011-01-11 08:01:01 UTC
(In reply to comment #22)
> I followed this up from Bug 650352,

You mean probably Red hat bugzilla bug #650352, which is in Closed/Upstream state, moved to bug #634290

> ...
> I can recreate the issue and submit more traces if it will help troubleshoot.

Please see comment #19 and comment #20, Pavel said it's working for him when he uses openchange 0.10 and compiles evolution-mapi 0.32.1 from sources. The openchange 0.10 is not part of Fedora, because it depends on newer samba4, which has new issues. So we are stuck a bit.
Comment 24 Pavel Chjen 2011-01-14 21:46:59 UTC
Not sure what was changed. Might got some repository update for camel or etc.
It is started to appear in my Ubuntu Maveric on Jan 14 2011.
Now Fetching of email is terminating. evolution still running but its no longer getting new messages. I was happy to use evolution before today.
Getting error 'MAPI error MAPI_E_CALL_FAILED (0x80004005)'.
here the outputs errors:
(evolution:1083): libexchangemapi-CRITICAL **: make_mapi_error: assertion `*perror == NULL' failed

(evolution:1083): camel-mapi-provider-WARNING **: Could not get folder list (OpenFolder: MAPI error MAPI_E_CALL_FAILED (0x80004005) occurred)

evolution-mail-Message: Error occurred while existing dialogue active:
Fetching items failed: OpenFolder: MAPI error MAPI_E_CALL_FAILED (0x80004005) occurred

(evolution:1083): camel-WARNING **: Could not open converter for 'CP50220' to 'UTF-8' charset

(evolution:1083): camel-WARNING **: No from set for message
evolution-mail-Message: Error occurred while existing dialogue active:
Fetching items failed: OpenMessage: MAPI error MAPI_E_CALL_FAILED (0x80004005) occurred

(evolution:1083): camel-mapi-provider-WARNING **: mapi_sync_deleted_free: Fetching items failed: OpenMessage: MAPI error MAPI_E_CALL_FAILED (0x80004005) occurred
Comment 25 Pavel Chjen 2011-01-14 21:49:10 UTC
compiled openchange from SVN trunk and getting 'Segmentation fall'
The compiled version from tar ball 0.10-NOMAD is not returning segmentation fall but return error described in my previous post.
Something was changed... in my OS, not sure what.
Comment 26 Milan Crha 2011-02-14 10:28:10 UTC
Note that openchange depends on samba4. You can try "make samba-git" in openchange checkout to get the latest samba4 and then build openchange itself with it. There was some changes with respect of crashing in krb5 code of samba4 done recently, but I do not know if it's your case, because no crashing function/backtrace provided.

Either way, one very important thing about this: does openchangeclient also crashes when accessing your Inbox or Sent (or any other folder which makes trouble for you)?

For Inbox you can run these commands on console:
a) check the profile name you've configured in evolution [1]:
   $ mapiprofile -f $LDBFILE --list
b) run the openchange client:
   $ openchangeclient -f $LDBFILE -p $PROFILENAME -P $PASSWORD --fetchmail

[1] LDBPREFIX depends on your version, it's either
     ~/.evolution/mapi-profiles.ldb
  or 
     ~/.local/share/evolution/mapi-profiles.ldb
Comment 27 Akhil Laddha 2011-04-05 12:13:06 UTC
Pavel, ping, any update for the bug ?
Comment 28 Akhil Laddha 2011-05-18 15:55:40 UTC
Closing this bug report as no further information has been provided. Please feel free to reopen this bug if you can provide the information asked for.
Thanks!
Comment 29 Pavel Chjen 2011-05-19 13:16:44 UTC
Workaround for this bug is run evolution once in MAPI debug mode:
#> export MAPI_DEBUG=10
#> evolution
Somehow in this mode evolution-mapi fixing message index. After evolution successfully synced with exchange server I usually close it and run in regular mode.