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 689476 - Slow composer open (emoticon and color widget leaks)
Slow composer open (emoticon and color widget leaks)
Status: RESOLVED FIXED
Product: GtkHtml
Classification: Other
Component: Editing
4.6.x
Other Linux
: Normal normal
: ---
Assigned To: gtkhtml-maintainers
gtkhtml-maintainers
Depends on:
Blocks:
 
 
Reported: 2012-12-02 10:41 UTC by Ruchir Brahmbhatt
Modified: 2013-03-15 15:54 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
gtkhtml patch (4.93 KB, patch)
2013-01-30 11:02 UTC, Milan Crha
committed Details | Review
eds patch (gnome-3-6) (647 bytes, patch)
2013-01-31 16:29 UTC, Milan Crha
committed Details | Review

Description Ruchir Brahmbhatt 2012-12-02 10:41:18 UTC
Just today I noticed evolution started acting very weird. When I try to reply or forward mail, it takes up to 1-2 minutes to open composer window. This makes it barely usable for routine.
Comment 1 André Klapper 2012-12-02 12:44:53 UTC
Please provide basic information such as version and distro.
Is this still reproducible after a restart of the system?
Comment 2 Ruchir Brahmbhatt 2012-12-03 03:28:44 UTC
Evolution: 3.6.2
OS: openSUSE 12.2 i586

I'm not able to reproduce after restart. Not sure what might be wrong that time.
Comment 3 Milan Crha 2013-01-30 08:39:03 UTC
Thanks for a bug report. I guess it's either related to bug #673780, or the composer takes longer and longer each time you open a new one, thus the time depends on how many times you opened a message composer (replied or forwarded a message). This applies also when just Ctrl+Shift+M, Esc, repeatedly, aka it's not necessary to left previous composers opened.

Adam told me this on IRC, thus I'd like to use your bug report for the repeated open.
Comment 4 Milan Crha 2013-01-30 11:02:30 UTC
Created attachment 234817 [details] [review]
gtkhtml patch

for gtkhtml;

This fixes a huge leak of widgets, which were causing slower and slower opening of the message composer after each attempt (open and close of the composer). This might be fully fixed after addressing also the above mentioned bug, as I see a better behaviour with this fix applied, though the composer still opens slower in time, only not that rapidly. I believe that creating underlying dialogs later, on demand, will help here, but I need to investigate this further.
Comment 5 Milan Crha 2013-01-30 11:06:03 UTC
Created commit 9026ede in gtkhtml master (4.7.5+)
Created commit 0b7d050 in gtkhtml gnome-3-6 (4.6.3+)
Comment 6 Milan Crha 2013-01-31 16:29:58 UTC
Created attachment 234919 [details] [review]
eds patch (gnome-3-6)

for evolution-data-server (in 3.6.x);
for evolution (in 3.7.x moved to e-util);

This is a follow-up patch, which fixes "two" more leaks around the composer. It was basically leaking all the addressbooks configured for address completion, each time the composer was closed.
Comment 7 Milan Crha 2013-01-31 16:34:11 UTC
Created commit fc3bf6f in evo master (3.7.5+)
Created commit d92dc8b in eds gnome-3-6 (3.6.4+)
Comment 8 Adam Williamson 2013-01-31 17:03:40 UTC
Thanks Milan! I'm doing local builds of gtkhtml3 and e-d-s to test this, I haven't been able to run long enough without a reboot yet to see if it solves the problem for me (been doing some kernel stuff), but I'll try to do so soon.
Comment 9 Milan Crha 2013-03-01 10:39:04 UTC
Adam, by any chance, did you manage to get any feedback on the changes, please?
Comment 10 Adam Williamson 2013-03-01 13:40:22 UTC
mcrha: it's been a bit troublesome because I keep running into https://bugzilla.gnome.org/show_bug.cgi?id=693101 . But I _think_ it's good now.
Comment 11 Milan Crha 2013-03-15 15:54:23 UTC
One more leak found, each sent message is leaks (definitely lost by valgrind). Fixed with these commits:

https://git.gnome.org/browse/evolution/commit/?id=19e4b77d1
https://git.gnome.org/browse/evolution/commit/?h=gnome-3-6&id=7f0361b0b57f90