GNOME Bugzilla – Bug 309316
evolution needs UNBELIEVABLE amounts of memory
Last modified: 2010-12-15 18:01:37 UTC
Distribution: Debian 3.1 Package: Evolution Priority: Normal Version: GNOME2.10.1 unspecified Gnome-Distributor: Debian Synopsis: evolution needs UNBELIEVABLE amounts of memory Bugzilla-Product: Evolution Bugzilla-Component: Miscellaneous Bugzilla-Version: unspecified Description: Description of Problem: I have grown to a heavy user of evolution benefits over the last months. That means several 10.000 mails in about 60 folders, heavy calendar usage with several ical sources and about a dozen virtual folders to find interesting usenet postings in groups that I dont have the time to read otherwise. Unfortunately, evolution now tends to use up incredible masses of RAM after several hours of use of the various functions. 400Megs is almost normal, sometimes even the 500Megs barrier is hit by evolution. A sample excerpt from "top" output is pasted below to underline what I mean. Evolution is great and it works good. But THESE numbers are - by any means - intolerable. PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 8103 fionn 15 0 479m 264m 13m S 0.0 29.6 4:55.86 evolution 7266 fionn 15 0 360m 8340 2364 S 0.0 1.1 0:23.48 evolution-data- Steps to reproduce the problem: 1. have huge mailfolders and a lot of virtual folders grepping lots of newsgroups 2. use the mail and calendar app heavily 3. start top and press M Actual Results: constantly swapping Expected Results: much less memory usage How often does this happen? daily Additional Information: ------- Bug moved to this database by unknown@gnome.bugs 2005-07-01 20:31 UTC ------- The original reporter of this bug does not have an account here. Reassigning to the person who moved it here, unknown@gnome.bugs. Previous reporter was bug-buddy@spamfilter.de.
*** Bug 249710 has been marked as a duplicate of this bug. ***
well, there's a lot of work on this issue in evolution-2.3, most of it done by michael (read his weblog if you're technically interested in the progress - http://blogs.gnome.org/view/zucchi). don't know if it will go into 2.4 or 2.6, though... depends on the freeze dates that gnome 2.11/2.12 have. :-/ adding perf keyword.
well, do some profiling and find out what's using the memory then. didn't even specify which version you're using, so it's hard to do anything about it at all.
Could you please more details on this (see above). Alternatively, you can try the latest builds and let us know if you can still observe the same.
I am the one who originally filed this report. "not Zed" wrote: > well, do some profiling and find out what's using the memory then. Well, I am not a developer. If you want bugreports from developers only, then remove the "report bug" item from the Help menu. > didn't even specify which version you're using, so it's hard to do > anything about it at all. I'll try not to rant about the ultimate usability nightmare called "bug-buddy" at this point, because it would be a bit OT. But if this tool as your preferred bug reporting utility for evolution is not even fscking able to collect and store version information properly along with its reports at LEAST - then I'd STRONGLY suggest not to blame the user! The version I used at the time this was filed was 2.2.0 I think. Until yesterday I used 2.3.7 which still often uses well over 300 Megs of Memory. Today I got 2.3.8 (from ubuntu) which does not even start so I cant tell. Anyone still got the 2.3.7 debian packages for me? ;-) I need to get work done.
Fionn, please check with the latest 2.2.0 and / or 2.4.0 and report your results. This is considered a serious bug in Debian right now, but I need a way to reproduce the bug to keep the severity so high (in other words, if you're the single person getting the bug and no-one reproduces it, I will downgrade the severity). I think the upstream maintainers would prefer you to check with 2.4. Please report for the following package versions: 2.4.0-2 (in experimental) 2.2.3-4 Thanks,
This snapshot has been taken shortly after starting evolution 2.4. Some other apps like openoffice2 (oowriter) are left in the list for comparison. PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 29592 fionn 15 0 262m 189m 14m S 0.0 25.0 2:54.55 evolution-2.4 30745 fionn 15 0 165m 74m 41m S 0.0 9.8 0:11.59 soffice.bin 7708 root 5 -10 186m 55m 7976 S 1.0 7.3 15:55.42 Xorg 32639 fionn 16 0 103m 12m 5560 S 0.0 1.7 0:05.72 evolution-data-server After reading some news, writing a Mail, browsing two search folders and switching to calendar, contacts and back: PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 29592 fionn 16 0 363m 242m 18m S 0.0 32.1 5:18.14 evolution-2.4 30745 fionn 15 0 170m 76m 42m S 0.9 10.2 0:38.15 soffice.bin 7708 root 5 -10 192m 60m 8124 S 53.5 8.0 17:08.91 Xorg 32639 fionn 16 0 112m 13m 5560 S 0.0 1.8 0:09.95 evolution-data-server I would say these numbers, although a bit smaller than in previous versions, are still pretty impressive. These numbers were taken while using version 2.4 of evolution. I wont go back to 2.2 just for benchmarks because apart from hogging my RAM things work fine and I am afraid to break stuff (I am somewhat dependant on a fully operative calendar and mail solution).
Thanks for providing additional information. REOPENing.
Created attachment 58929 [details] valgrind report Found some leaks in Evolution when I ran valgrind for testing leaks in Exchange plugin. Instead of filing a new bug, attaching it to this bug. (another bug in this category is http://bugzilla.gnome.org/show_bug.cgi?id=322698)
Created attachment 58930 [details] [review] patch Patch that fixes 2 leaks in the valgrind report above.
That patch is fine. Builds fine too. Ok to commit.
committed the patch in comment #10 to cvs head.
changing patch status to "committed" according to last comment and to cvs.
fionn, can you retest this with evolution 2.6?
top - 13:38:36 up 27 days, 20:18, 26 users, load average: 0.89, 1.57, 1.17 Tasks: 173 total, 1 running, 163 sleeping, 0 stopped, 9 zombie Cpu(s): 12.9% us, 3.6% sy, 1.0% ni, 82.2% id, 0.0% wa, 0.3% hi, 0.0% si Mem: 2075292k total, 2007892k used, 67400k free, 84k buffers Swap: 1005440k total, 500336k used, 505104k free, 578340k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 24509 fionn 0 0 522m 373m 19m S 0.0 18.4 14:58.73 evolution-2.6 4500 root 0 -10 239m 171m 15m S 5.3 8.4 1089:35 Xorg 20255 fionn 0 5 277m 95m 6692 S 1.3 4.7 186:47.18 java 23483 fionn 0 0 123m 51m 11m S 0.0 2.5 22:27.13 nautilus 26627 fionn 0 0 193m 37m 5656 S 0.0 1.8 0:38.60 evolution-data-
top - 16:40:22 up 7:11, 4 users, load average: 0.12, 0.29, 0.32 Tasks: 125 total, 2 running, 123 sleeping, 0 stopped, 0 zombie Cpu(s): 13.7%us, 2.3%sy, 0.0%ni, 79.0%id, 5.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 497820k total, 483528k used, 14292k free, 4152k buffers Swap: 1572856k total, 374176k used, 1198680k free, 75632k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 19400 ds 16 0 728m 173m 16m S 0.0 35.7 3:50.26 evolution valgrind report will follow as soon as I have some time to do it as it takes quite some time... Please see also my post on evolution-list (http://mail.gnome.org/archives/evolution-list/2006-October/msg00143.html)
Valgrind-output (Gnome evolution 2.8.1.1, Fedora Core 6: (/home/ds)$ rpm -qa | grep evolution evolution-sharp-0.11.1-10.fc6 evolution-data-server-1.8.1-1.fc6 evolution-bogofilter-0.2.0-3.fc6 evolution-2.8.1.1-3.fc6 evolution-webcal-2.7.1-6 ) I just started evolution and fetched once all e-mails (3 IMAPS, 5 POPS, none sent).
Created attachment 76316 [details] valgrind on evolution w/ leak-check=full
Most of the leaks in this report are non-evolution related leaks in libXcursor (already fixed), fontconfig, and so on. There have been fixes for leaks in later releases, but the fact is that evolution will use more memory the longer you use it because of summary files/indexing etc. You could try turning off indexing for all your folders and see if that helps. Also vfolders use a lot of memory so removing those will help (if you don't strictly need them of course)
hi all, talking about the memory usage, on my machine, evolution is using 10 threads ... iirc, every thread allocates about 8 mb on the stack ... if the number of threads would be reduced (maybe it's possible to combine the functionality of different threads), less memory would be needed for the stack ...
Did any one get time to try out current stable 2.22.3 ? After camel disk summary integration in 2.24, evolution should be fast and should use very less memory.
(In reply to comment #21) > Did any one get time to try out current stable 2.22.3 ? 2.22.3 IS NOT CURRENT STABLE.
ah..you meant i should mention 2.22.3.1 ? I feel user will automatically try in current one what ever version he has. Anyway next time i will try to put correct one.
Anyone tried on later version 2.22.x or 2.24.x , please report back, thanks.
top - 11:04:07 up 15:33, 32 users, load average: 0.29, 0.97, 2.03 Tasks: 211 total, 1 running, 209 sleeping, 0 stopped, 1 zombie Cpu(s): 26.4%us, 3.3%sy, 0.0%ni, 69.2%id, 0.3%wa, 0.3%hi, 0.3%si, 0.0%st Mem: 2074688k total, 1911472k used, 163216k free, 8k buffers Swap: 2507476k total, 0k used, 2507476k free, 642612k cached PID to kill: PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 16705 fionn 20 0 678m 572m 22m S 13.3 28.2 0:56.64 evolution 4544 root 20 0 106m 59m 16m S 5.0 3.0 10:28.70 Xorg 5070 fionn 20 0 276m 24m 5956 S 3.7 1.2 0:22.56 evolution-data- 4971 fionn 20 0 30116 11m 9292 S 2.0 0.6 4:39.78 gkrellm 4907 fionn 20 0 9296 6392 1944 S 1.7 0.3 0:22.79 gconfd-2 6264 fionn 20 0 312m 182m 24m S 1.0 9.0 3:03.12 firefox Additional info: 1) I switched to ubuntu in the meantime. 2) Of course I have some more mails than when I originally reported 3) I stopped using virtual folders at all because they made evolution unusable. Occasionally it used more than 1GB of memory! 4) Version info: evolution 2.22.3.1-0ubuntu1 evolution-common 2.22.3.1-0ubuntu1 evolution-data-server 2.22.3-0ubuntu3 evolution-data-server-common 2.22.3-0ubuntu3 evolution-plugins 2.22.3.1-0ubuntu1 evolution-webcal 2.21.92-0ubuntu1
Next-day followup: This is what you get to see if you keep evolution running for more than one business day without restart... top - 11:01:35 up 1 day, 15:30, 33 users, load average: 2.05, 2.90, 2.80 Tasks: 227 total, 3 running, 223 sleeping, 0 stopped, 1 zombie Cpu(s): 82.6%us, 13.8%sy, 0.7%ni, 0.0%id, 2.7%wa, 0.3%hi, 0.0%si, 0.0%st Mem: 2074688k total, 2017316k used, 57372k free, 0k buffers Swap: 2507476k total, 1315356k used, 1192120k free, 236032k cached PID to kill: PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 16705 fionn 20 0 1155m 469m 22m S 3.0 23.2 7:50.12 evolution 6264 fionn 20 0 414m 259m 23m S 3.0 12.8 20:33.38 firefox 27896 fionn 25 5 1206m 143m 27m S 0.0 7.1 0:23.96 java 4544 root 20 0 178m 110m 18m S 2.7 5.5 41:46.29 Xorg
I'm using 2.28.3 on Debian (machine has 2GB): # ps waux|grep evolution USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND nk 5700 0.7 9.7 1528336 199864 ? Sl Apr08 28:28 evolution --sm-config-prefix /evolution-vgps64/ --sm-client-id 1013218eb7ed9b46b412704039839552300000025290031 --screen 0 for older evolution versions the Debian bugtracking has this bug which described the memory problem in 2.24 (with pointer to valgrind) and 2.28: http://bugs.debian.org/519169
I'm closing this because we are constantly introducing new and fixing old memory leaks in the code, based on various valgrind reports in multiple bugs. It's not bearable to do all this in one bug report anyway, because evolution is divided into multiple components. If you'll find any memory leaks in actual stable (which is 2.32.x right now), or the best with git master (2.91.x), then feel free to open a bug report, with a valgrind log about the leaks. Thanks in advance.