[Evolution] Bug#345886: evolution: Freezes for inordinately long while syncing large IMAP directory

Andrew Moise chops at demiurgestudios.com
Wed Jan 4 03:07:18 UTC 2006


Package: evolution
Version: 2.2.3-5
Severity: normal

  So I added an IMAP account to evolution that's exported by uw-imapd.
Because uw-imapd exports my entire home directory, and not just my
mail, that means that evolution has to grovel through my entire home
directory exploring before it'll let me use my IMAP account.  That
takes twenty or thirty minutes.
  Now, though, it's done talking to imapd, and it seems to be frozen.
It's not responding to UI events, and it's used 95 minutes of CPU time
without any visible progress.  gdb backtraces look like this:

#0  0xb6ceaf1e in IA__g_strndup (
    str=0xb890c65 "qix.trefoil.com/src/misc-twiki/old-twiki/var-lib-twiki/pub/Emigrated/PhotoReferenceEffigy/PDVD_022.jpg,v", n=23)
    at gstrfuncs.c:120
#1  0xb7e3eb19 in camel_url_new_with_base () from /usr/lib/libcamel-1.2.so.0
#2  0xb7e3f4ef in camel_url_new () from /usr/lib/libcamel-1.2.so.0
#3  0xb67d23b2 in camel_store_folder_uri_equal ()
   from /usr/lib/libcamel-provider-1.2.so.3
#4  0xb68dfa5c in mail_tools_folder_to_url ()
   from /usr/lib/evolution/2.2/components/libevolution-mail.so
#5  0xb68dffe9 in mail_vfolder_add_uri ()
   from /usr/lib/evolution/2.2/components/libevolution-mail.so
#6  0xb68d10c8 in mail_crypto_get_pgp_cipher_context ()
   from /usr/lib/evolution/2.2/components/libevolution-mail.so
#7  0xb68d44f3 in mail_msg_init ()
   from /usr/lib/evolution/2.2/components/libevolution-mail.so
#8  0xb68d4593 in mail_msg_init ()
   from /usr/lib/evolution/2.2/components/libevolution-mail.so
#9  0xb6cd4961 in g_idle_dispatch (source=0xab45000, callback=0x17, 
    user_data=0xab457b8) at gmain.c:3817
#10 0xb6cd2421 in IA__g_main_context_dispatch (context=0x809f210)
    at gmain.c:1934
#11 0xb6cd5687 in g_main_context_iterate (context=0x809f210, block=1,
#12 0xb6cd5bd8 in IA__g_main_loop_run (loop=0x80b5948) at gmain.c:2769
#13 0xb74b2758 in bonobo_main () from /usr/lib/libbonobo-2.so.0
#14 0x080665f5 in main ()

  ... and straces look like this:

time([1136343451])                      = 1136343451
time([1136343451])                      = 1136343451
time([1136343452])                      = 1136343452
time([1136343452])                      = 1136343452
time([1136343452])                      = 1136343452
mprotect(0xb07ad000, 4096, PROT_READ|PROT_WRITE) = 0
time([1136343452])                      = 1136343452
time([1136343453])                      = 1136343453
time([1136343453])                      = 1136343453
time([1136343453])                      = 1136343453
time([1136343453])                      = 1136343453
time([1136343454])                      = 1136343454
time([1136343454])                      = 1136343454
time([1136343454])                      = 1136343454
time([1136343455])                      = 1136343455
time([1136343455])                      = 1136343455
time([1136343455])                      = 1136343455
time([1136343455])                      = 1136343455
time([1136343456])                      = 1136343456
time([1136343456])                      = 1136343456
time([1136343456])                      = 1136343456
time([1136343457])                      = 1136343457
time([1136343457])                      = 1136343457
time([1136343457])                      = 1136343457
time([1136343457])                      = 1136343457
time([1136343458])                      = 1136343458
time([1136343458])                      = 1136343458
time([1136343458])                      = 1136343458
time([1136343458])                      = 1136343458
time([1136343459])                      = 1136343459
time([1136343459])                      = 1136343459
time([1136343459])                      = 1136343459
time([1136343460])                      = 1136343460
time([1136343460])                      = 1136343460
time([1136343460])                      = 1136343460
time([1136343460])                      = 1136343460
mprotect(0xb07ae000, 4096, PROT_READ|PROT_WRITE) = 0
time([1136343461])                      = 1136343461
time([1136343461])                      = 1136343461

  This is very unpleasant, and it all seems rather unecessary to me.
I think it would be better, at the very least, if evolution would
keep itself able to respond to UI events (those dealing with accounts
other than the IMAP account it's chewing over) while this process is
going on.  I think it would be rather more ideal if it would also take
less time to initialize an IMAP account.  My home directory's decently
large, but not obscene (10 gigabytes in 2882 directories and
subdirectories), and my computer is moderately fast (1 GHz or so).
  It would also, of course, be ideal (to put it charitably, IMHO) if
uw-imapd did not export the entire home directory.  That bug exists
already, though.

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.14-2-686
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)

Versions of packages evolution depends on:
ii  evolution-dat 1.2.3-8                    evolution database backend server
ii  gconf2        2.10.1-6                   GNOME configuration database syste
ii  gnome-icon-th 2.10.1-2                   GNOME Desktop icon theme
ii  gtkhtml3.6    3.6.2-1                    HTML rendering/editing library - b
ii  libart-2.0-2  2.3.17-1                   Library of functions for 2D graphi
ii  libatk1.0-0   1.10.3-1                   The ATK accessibility toolkit
ii  libaudiofile0 0.2.6-6                    Open-source version of SGI's audio
ii  libbonobo2-0  2.10.1-1                   Bonobo CORBA interfaces library
ii  libbonoboui2- 2.10.1-1                   The Bonobo UI library
ii  libc6         2.3.5-9                    GNU C Library: Shared libraries an
ii  libcamel1.2-0 1.2.3-8                    The Evolution MIME message handlin
ii  libcomerr2    1.38+1.39-WIP-2005.12.10-2 common error description library
ii  libcompfaceg1 1:1.5.2-1                  Compress/decompress images for mai
ii  libdb4.2      4.2.52-23                  Berkeley v4.2 Database Libraries [
ii  libebook1.2-3 1.2.3-8                    Client library for evolution addre
ii  libecal1.2-2  1.2.3-8                    Client library for evolution calen
ii  libedataserve 1.2.3-8                    Utily library for evolution data s
ii  libedataserve 1.2.3-8                    GUI utily library for evolution da
ii  libesd0       0.2.36-1                   Enlightened Sound Daemon - Shared 
ii  libfontconfig 2.3.2-1.1                  generic font configuration library
ii  libfreetype6  2.1.10-1                   FreeType 2 font engine, shared lib
ii  libgail-commo 1.8.8-1                    GNOME Accessibility Implementation
ii  libgail17     1.8.8-1                    GNOME Accessibility Implementation
ii  libgal2.4-0   2.5.3-1.1                  G App Libs (run time library)
ii  libgal2.4-com 2.5.3-1.1                  G App Libs (common files)
ii  libgconf2-4   2.10.1-6                   GNOME configuration database syste
ii  libgcrypt11   1.2.2-1                    LGPL Crypto library - runtime libr
ii  libglade2-0   1:2.5.1-2                  library to load .glade files at ru
ii  libglib2.0-0  2.8.4-2                    The GLib library of C routines
ii  libgnome-keyr 0.4.6-2                    GNOME keyring services library
ii  libgnome-pilo 2.0.12-1.4                 Support libraries for gnome-pilot
ii  libgnome2-0   2.10.1-1                   The GNOME 2 library - runtime file
ii  libgnomecanva 2.10.2-2                   A powerful object-oriented display
ii  libgnomeprint 2.10.3-3                   The GNOME 2.2 print architecture -
ii  libgnomeprint 2.10.2-2                   GNOME 2.2 print architecture User 
ii  libgnomeui-0  2.10.1-1                   The GNOME 2 libraries (User Interf
ii  libgnomevfs2- 2.10.1-5                   The GNOME virtual file-system libr
ii  libgnutls11   1.0.16-14                  GNU TLS library - runtime library
ii  libgpg-error0 1.1-4                      library for common error values an
ii  libgtk2.0-0   2.8.9-2                    The GTK+ graphical user interface 
ii  libgtkhtml3.6 3.6.2-1                    HTML rendering/editing library - r
ii  libice6       6.9.0.dfsg.1-1             Inter-Client Exchange library
ii  libjpeg62     6b-11                      The Independent JPEG Group's JPEG 
ii  libkrb53      1.4.3-5                    MIT Kerberos runtime libraries
ii  libldap2      2.1.30-12                  OpenLDAP libraries
ii  libnspr4      2:1.7.12-1                 Netscape Portable Runtime Library
ii  libnss3       2:1.7.12-1                 Network Security Service Libraries
ii  liborbit2     1:2.12.4-1                 libraries for ORBit2 - a CORBA ORB
ii  libpango1.0-0 1.10.1-2                   Layout and rendering of internatio
ii  libpisock8    0.11.8-17                  Library for communicating with a P
ii  libpisync0    0.11.8-17                  Synchronization library for PalmOS
ii  libpopt0      1.7-5                      lib for parsing cmdline parameters
ii  libsm6        6.9.0.dfsg.1-1             X Window System Session Management
ii  libsoup2.2-8  2.2.6-1                    an HTTP library implementation in 
ii  libtasn1-2    0.2.17-1                   Manage ASN.1 structures (runtime)
ii  libx11-6      6.9.0.dfsg.1-1             X Window System protocol client li
ii  libxml2       2.6.22-2                   GNOME XML library
ii  xlibs         6.9.0.dfsg.1-1             X Window System client libraries m
ii  zlib1g        1:1.2.3-9                  compression library - runtime

Versions of packages evolution recommends:
pn  evolution-plugins             <none>     (no description available)
ii  gnome-desktop-data            2.10.2-1   Common files for GNOME 2 desktop a
pn  gnome-pilot-conduits          <none>     (no description available)
ii  mozilla-psm                   2:1.7.12-1 The Mozilla Internet application s
pn  spamassassin                  <none>     (no description available)

-- no debconf information




More information about the Pkg-evolution-maintainers mailing list