evolution-2.4.1 seems to have a huge memory leak: When evolution is running, it uses more and more memory, at a rate of about .7MB/s (as determined from the VIRT and RES columns in top), until all memory is used and swap storms begin. This happens regardless of what I do in evolution, even if I just open evolution (with the default view being the email in my default inbox) and have no user interaction. The only output I see in a terminal if I run evolution from one is: adding hook target 'source' (evolution:11314): camel-WARNING **: camel_exception_get_id called with NULL parameter. (evolution:11314): camel-WARNING **: camel_exception_get_id called with NULL parameter. (evolution:11314): e-canvas-background.c-CRITICAL **: ecb_style_set: assertion `ecb->priv->gc != NULL' failed .... with the last message repeating occasionally. I skipped the upgrade from evolution-2.2.x to -2.4.0, so I'm currently emerging -2.4.0 to see if the error exists there too, or if it was broken after 2.2. I'm using evolution-data-server-1.4.1, if that's helpful. I'm not really sure where to start in finding the cause of the problem here, so please let me know if I can do anything to help. Reproducible: Always Steps to Reproduce: 1. start evolution-2.4.1 2. do anything, or nothing 3. wait. Actual Results: evolution uses all available memory and computer becomes unusable. Portage 2.0.53_rc5 (default-linux/amd64/2005.0, gcc-3.4.4, glibc-2.3.5-r2, 2.6.13-gentoo-r1 x86_64) ================================================================= System uname: 2.6.13-gentoo-r1 x86_64 AMD Athlon(tm) 64 Processor 3500+ Gentoo Base System version 1.12.0_pre9 ccache version 2.4 [disabled] dev-lang/python: 2.2.3-r6, 2.3.5, 2.4.2 sys-apps/sandbox: 1.2.13 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.20 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="amd64 ~amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=k8 -pipe -O3" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib64/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d" CXXFLAGS="-march=k8 -pipe -O3" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="amd64 X Xaw3d a52 aac aalib acl acpi aim alsa apache2 audiofile avi bash-completion berkdb bitmap-fonts bonobo bzip2 bzlib calendar cdr crypt cups curl dga dio dvd eds emacs emboss encode encoder esd ethereal exif fam fftw flac fontserver foomaticdb fortran ftp gd gdbm gif ginac gnome gnutls gphoto2 gpm gstreamer gtk gtk2 gtkhtml guile icq ieee1394 imagemagick imap imlib ipv6 java joystick jpeg lcms lesstif libwww lirc lm_sensors lzw lzw-tiff maildir mikmod mime mmap mng motif mozilla mp3 mpeg msn ncurses nls nptl offensive ogg oggvorbis openal opengl oscar pam pdflib perl plotutils png posix ppds python quicktime readline samba scanner sdl sharedmem sndfile sockets sox speex spell ssl svg sysvipc tcltk tcpd tetex theora tiff truetype truetype-fonts type1-fonts usb userlocales vorbis wmf xine xml xml2 xmms xpm xv xvid yahoo zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
I just tested this with evolution-2.4.0, and it has the same issue, although it happens much more slowly. Evolution 2.4.0's memory usage only increases by about 0.4MB/s according to my completely nonsensical benchmark. I'm now reverting back to evolution-2.2.3-r3, which should work...
Er, I did some digging and testing, and it seems the error isn't exclusively in evo 2.4.x, but is made worse in 2.2.x. Somehow, my evolution configuration got changed such that one of my mail accounts could not be used: When I tried to check mail in that account, it would time out and fail, and the status pane for evolution would show that it was trying to ping that mail server. That misconfiguration causes all versions of evolution I tested to leak memory, but the newer versions have more violent leaks. I can't reproduce the config file clobbering--I tried setting up the acct in 2.2 and then upgraded to 2.4, but no problems. My apologies for the initial bug report being incorrect because of hastiness. So, it looks like this, instead of what I first reported: 1. Bug in all? (2.2.3 and 2.4 at least) versions of evolution, such that an invalid mail account configuration causes memory leaks, with the rate of leakage getting worse on newer versions. 2. Bug in evo-2.4? that sometimes somehow corrupts mail account configuration files. (As my bug is sort-of resolved, should I close this bug and open a new one about item 1 of the list just above this?)
"Er, I did some digging and testing, and it seems the error isn't exclusively in evo 2.4.x, but is made worse in 2.2.x." should be: "Er, I did some digging and testing, and it seems the error isn't exclusively in evo 2.4.x, it is just made worse in 2.4.x."
I'm seeing similar behaviour confirmed (for me at least) on 2.2.3-r3 with evolution-data-server-1.2.3 I'm also seeing a large amount of CPU usage too, with processes like evolution-alarm alarm and gconfd-2 throttling everything. I basically have to quit evolution, kill the aforementioned processes and restart it again. So I decided to upgrade to 2.4.1 with evolution-data-server-1.4.2.1 It would *appear* that the leaks have stopped. However, I also did another thing to try and fix it in that I used gconf-editor to set apps>evolution>mail>junk>sa>use_daemon to false might work for others Portage 2.0.51.22-r3 (default-linux/amd64/2005.1, gcc-3.4.4, glibc-2.3.5-r2, 2.6.13-gentoo-r5 x86_64) ================================================================= System uname: 2.6.13-gentoo-r5 x86_64 AMD Athlon(tm) 64 Processor 3200+ Gentoo Base System version 1.6.13 dev-lang/python: 2.3.5-r2, 2.4.2 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.15.92.0.2-r10 sys-devel/libtool: 1.5.20 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -march=k8 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2 -march=k8 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://mirror.isp.net.au/ftp/pub/gentoo http://mirror.aarnet.edu.au/pub/gentoo http://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://gentoo.chem.wisc.edu/gentoo/ http://mirror.isp.net.au/pub/gentoo/ http://ftp.isu.edu.tw/pub/Linux/Gentoo" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="amd64 X alsa audiofile avi berkdb bitmap-fonts bzip2 cdr crypt cups dvd dvdr eds emboss encode esd exif expat fam ffmpeg foomaticdb fortran gdbm gif glut gnome gphoto2 gpm gstreamer gtk gtk2 hal howl idn imagemagick imlib ipv6 java jpeg junit lcms ldap lzw lzw-tiff mad mng motif mozilla mp3 mpeg ncurses nls nsplugin nvidia ogg opengl oss pam pcre pdflib perl png python quicktime readline samba sdl spell ssl tcpd theora tiff truetype truetype-fonts type1-fonts udev usb userlocales vorbis xine xml2 xpm xv xvid zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, MAKEOPTS, PORTDIR_OVERLAY
I'm seeing similar problems with evolution-2.4.2.1 on my workstation. I had to kill it a couple times today because it nearly exhausted all of my memory (512MB real + 768MB swap). It also was killed by the kernel OOM-killer when I left it running during lunch. It appears to quickly grow in memory-size when checking for new mail on an imap account. I'm happy to try suggestions on how to isolate this problem. As I am running evolution on a p4, this is not amd-specific. Output of 'emerge info' is below. Portage 2.0.54 (default-linux/x86/2005.1, gcc-3.3.6, glibc-2.3.5-r2, 2.6.14-gentoo-r5 i686) ================================================================= System uname: 2.6.14-gentoo-r5 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz Gentoo Base System version 1.6.14 dev-lang/python: 2.3.5-r2, 2.4.2 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/splash /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=pentium4 -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="ftp://ftp.ussg.iu.edu/pub/linux/gentoo http://mirror.datapipe.net/gentoo ftp://pandemonium.tiscali.de/pub/gentoo/ ftp://ftp.ecc.u-tokyo.ac.jp/GENTOO" LANG="en_US.UTF-8" LC_ALL="en_US.UTF-8" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" USE="x86 X acl adns aim alsa apache2 apm audiofile avi berkdb bitmap-fonts bzip2 cairo cdr crypt cups curl dba dbus dvd eds emacs emboss encode esd ethereal evo exif expat fam fbcon flatfile foomaticdb fortran freetype gd gdbm gif glut gmp gnome gnutls gpm gstreamer gtk gtk2 gtkhtml guile hal icq idn imagemagick imlib ipv6 jabber java jpeg lcms ldap libg++ libwww live mad mailwrapper mikmod mime mmx mng mono motif mozilla mp3 mpeg mysql ncurses nis nls nptl nsplugin ogg oggvorbis opengl oss pam pcre pda pdflib perl png posix python quicktime readline recode samba sasl sdl session snmp sockets spell sqlite sse ssl svga tcltk tcpd tiff truetype truetype-fonts type1-fonts udev unicode usb vorbis xml2 xv zlib video_cards_radeon userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LDFLAGS, LINGUAS
Just to see if it would make a difference, I moved the ~/.evolution and ~/.gconf/apps/evolution directories out of the way and logged back into my GNOME environment. I went through the steps to create a new account and then tried to access my mail. Evolution gives back the following error message: Error while Scanning folders in "IMAP server my.mail.host". IMAP command failed: SUBSCRIBE failed: Already subscribed to mailbox INBOX After that error message is displayed, evolution shows only three folders: 1. An unnamed folder, which I assume is my INBOX 2. Junk 3. Trash Running with CAMEL_DEBUG=all does yield some interesting bits: 1. It appears to be LIST'ing my entire home directory on the server. I assumed that setting the option 'Show only subscribed folders' under 'Receiving options' would restrict this behavior. 2. evolution logs out after it fails to susbscribe to INBOX (even thought it is already subscribed). Snippet below: received: A00006 OK LSUB completed sending : A00009 LSUB "" INBOX received: A00007 NO SUBSCRIBE failed: Already subscribed to mailbox INBOX sending : A00010 LOGOUT Using thunderbird, I am able to successfully see all of the folders I am subscribed to and read my mail.
Using IMAP4rev1, I have not yet seen the problematic memory usage I saw before. However, based on http://bugzilla.gnome.org/show_bug.cgi?id=324118, I do not expect this feature to continue to exist. It appears I am running into more than just a memory issue. Consequently, I opened a bug in GNOME's bugzilla that describes this problem: http://bugzilla.gnome.org/show_bug.cgi?id=331309
please upgrade to evolution-2.6 ( just marked stable with GNOME 2.14 ) and re-open the bug if you can still reproduce it.