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 656525 - GObject leaks
GObject leaks
Status: RESOLVED OBSOLETE
Product: evolution
Classification: Applications
Component: general
3.0.x (obsolete)
Other Linux
: Normal normal
: ---
Assigned To: Evolution Shell Maintainers Team
Evolution QA team
Depends on: 656489
Blocks:
 
 
Reported: 2011-08-14 17:33 UTC by David Woodhouse
Modified: 2021-05-19 12:12 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description David Woodhouse 2011-08-14 17:33:40 UTC
Evolution is taking 4GiB of RAM; 1.7GiB of it resident. This is a bad thing.

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
28740 dwmw2     20   0 3940m 1.7g  11m S  0.0 43.2   9:37.06 evolution

Valgrind doesn't show many interesting leaks; I've mostly tracked down the ones that valgrind can detect. The majority, I suspect, are GObjects that valgrind doesn't know are leaked because they have circular references.

So I played with the code from http://blogs.gnome.org/danni/2011/02/17/ld_preload-gobject-lifetime-debugging-tool/ 

After about 7½ hours, the following are the most-allocated objects:

42 PangoContext:
44 GtkLabel:
45 ESource:
46 GtkAdjustment:
51 GtkAlignment:
52 GtkWindow:
53 EFilterPart:
53 ESourceGroup:
54 EFilterOption:
56 GtkMenuItem:
58 ETableState:
64 GtkBox:
71 GtkCheckMenuItem:
72 GtkAccelGroup:
75 EAccount:
75 GdkX11Window:
87 PangoCairoFcFont:
96 GdkX11Visual:
106 GtkActionGroup:
127 ETableSortInfo:
128 GdkPixbuf:
130 CamelIMAPXFolder:
131 CamelIMAPXSummary:
131 CamelOperation:
145 GtkSeparatorMenuItem:
161 GtkRadioAction:
198 CamelDataCache:
209 CamelFolderSearch:
292 GtkImageMenuItem:
296 GtkAction:
335 GtkDrawingArea:
335 GtkhtmlColorSwatch:
338 GtkModifierStyle:
346 GtkFrame:
352 GtkImage:
395 GtkButton:
399 GtkAccelLabel:
578 GtkStyleProperties:
1682 EEwsItem:
2452 GtkStyleContext:

After 17 hours, it looks like this:

54 PangoContext:
57 GtkMenuItem:
71 GtkCheckMenuItem:
75 EAccount:
93 GdkX11Window:
95 GtkLabel:
96 GdkX11Visual:
107 GtkWindow:
120 ESource:
127 ESourceGroup:
131 CamelIMAPXFolder:
131 CamelIMAPXSummary:
145 GtkSeparatorMenuItem:
171 GdkPixbuf:
174 ETableState:
174 GtkAdjustment:
199 CamelDataCache:
206 GtkAlignment:
209 CamelFolderSearch:
218 GtkBox:
225 PangoCairoFcFont:
292 GtkImageMenuItem:
393 GtkAccelGroup:
400 GtkAccelLabel:
422 GtkActionGroup:
460 CamelOperation:
473 ETableSortInfo:
492 GtkImage:
619 GtkAction:
622 GtkRadioAction:
2013 GtkDrawingArea:
2015 GtkhtmlColorSwatch:
2018 GtkModifierStyle:
2082 GtkFrame:
2269 GtkButton:
2332 GtkStyleProperties:
9939 GtkStyleContext:
21518 EEwsItem:

The EEwsItem leak is bug 656489; it looks like there are about a dozen more, mostly in UI code...
Comment 1 David Woodhouse 2011-08-17 23:41:45 UTC
I seem to gain 374 GtkButtons every time I open a composer window and then close it.
Comment 2 André Klapper 2021-05-19 12:12:30 UTC
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org. 
As part of that, we are mass-closing older open tickets in bugzilla.gnome.org
which have not seen updates for a longer time (resources are unfortunately
quite limited so not every ticket can get handled).

If you can still reproduce the situation described in this ticket in a recent
and supported software version, then please follow
  https://wiki.gnome.org/Community/GettingInTouch/BugReportingGuidelines
and create a new bug report ticket at
  https://gitlab.gnome.org/GNOME/evolution/-/issues/

Thank you for your understanding and your help.