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 713432 - display new messages more quickly on startup
display new messages more quickly on startup
Status: RESOLVED FIXED
Product: geary
Classification: Other
Component: engine
master
Other All
: High normal
: 0.6.0
Assigned To: Jim Nelson
Geary Maintainers
Depends on:
Blocks:
 
 
Reported: 2012-03-17 04:40 UTC by Adam Dingle
Modified: 2014-01-18 08:54 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Charles Lindsay 2013-11-21 20:20:06 UTC


---- Reported by adam@yorba.org 2012-03-17 09:40:00 -0700 ----

Original Redmine bug id: 4859
Original URL: http://redmine.yorba.org/issues/4859
Searchable id: yorba-bug-4859
Original author: Adam Dingle
Original description:

An important metric for Geary is the time it takes to display new message(s)
in the message list on startup. I just tried the following experiment several
times alternating between Geary (with previews off) and Thunderbird:

1. Close the email client.

2. Use a web mail interface to send yourself a short test message.

3. Launch the email client. Using a stopwatch, measure the time it takes from
launch until the test message appears in the message list.

The results were as follows:

Thunderbird: 5.5, 4.2, 4.6, 4.7, avg = 4.8 seconds

Geary: 6.3, 6.4, 6.6, 6.6, avg = 6.5 seconds

So Geary seems to be around 1.5 seconds slower on average. Geary should be at
least as fast as Thunderbird, probably faster since it's a leaner program and
should be able to start more quickly.

Related issues:
related to geary - 7411: When changing folders, conversation list is slow
to populate (Open)
related to geary - 7438: new mail is slow to arrive when you switch to
its contain... (Open)
related to geary - 5746: Faster synchronization with Inbox (Open)



---- Additional Comments From geary-maint@gnome.bugs 2013-10-20 12:13:00 -0700 ----

### History

####

#1

Updated by Adam Dingle over 1 year ago

  * **Assignee** deleted (<strike>_Jim Nelson_</strike>)

####

#2

Updated by Adam Dingle over 1 year ago

  * **Target version** deleted (<strike>_0.1_</strike>)

####

#3

Updated by Jim Nelson 10 months ago

  * **Subject** changed from _display first message more quickly on startup_ to _display new messages more quickly on startup_
  * **Category** set to _engine_
  * **Target version** set to _0.3.0_

####

#4

Updated by Jim Nelson 9 months ago

  * **Target version** changed from _0.3.0_ to _0.4.0_

####

#5

Updated by Jim Nelson 8 months ago

  * **Target version** changed from _0.4.0_ to _0.5.0_

####

#6

Updated by Adam Dingle about 1 month ago

I just repeated the experiment above with Geary built from git master.
Unfortunately Geary's performance in this regard has regressed significantly.
In each of 3 trials, it took Geary about 13 seconds after launch to show a
newly arrived message in the conversation list. Thunderbird displayed it in
about 4 seconds in each trial. So we're about 3 times slower than Thunderbird.

This seems like it could be related to #7411 and #7438.



--- Bug imported by chaz@yorba.org 2013-11-21 20:20 UTC  ---

This bug was previously known as _bug_ 4859 at http://redmine.yorba.org/show_bug.cgi?id=4859

Unknown milestone "unknown in product geary. 
   Setting to default milestone for this product, "---".
Setting qa contact to the default for this product.
   This bug either had no qa contact or an invalid one.
Resolution set on an open status.
   Dropping resolution 

Comment 1 Adam Dingle 2013-12-16 16:44:37 UTC
As you guys know, fixing this is my top request for the next release.  Do we know why Geary is so slow to display messages on startup compared with Thunderbird?  If so, how much work do we think will we'll need to do to achieve parity here?
Comment 2 Jim Nelson 2013-12-16 19:14:46 UTC
No, we don't know at this moment.  Certainly we can spend some time optimizing startup time in Geary, and we can spend some time studying the Thunderbird source code, but we haven't done either yet for this cycle.  As indicated, I've targeted this work for the next release of Geary.

Like most optimization work, it's difficult to make a reliable estimate about the amount of time it will take to reach a goal until we've at least performed some internal measurements to locate the bottleneck in Geary.

One question: when you did your timing measurements, were Geary and Thunderbird configured for the same mail accounts (and the same number of mail accounts)?
Comment 3 Adam Dingle 2013-12-20 00:27:09 UTC
(In reply to comment #2)
> One question: when you did your timing measurements, were Geary and Thunderbird
> configured for the same mail accounts (and the same number of mail accounts)?

I believe yes, though it was a while back so I can't be absolutely sure.  In any case I'm sure there's a lot of room for improvement here, so I'll look forward to hearing about more progress on this front.  :)
Comment 4 Jim Nelson 2014-01-15 23:50:04 UTC
Adam, I've been poking at this and have made some improvements.  The branch is at wip/713432-startup

In particular, with this branch the Inbox contents are displayed more quickly.  I'm also seeing about a 5s delay between starting Geary and getting a single new message displayed in the conversation list.

Can you run and tell me what you think?
Comment 5 Adam Dingle 2014-01-16 11:01:14 UTC
Jim, I tried that branch and the startup time seems enormously improved - thanks!  I'm very much looking forward to seeing this land.

I'm still sometimes seeing the progress spinner pause briefly before new messages in the inbox are actually displayed.  This is now less of an issue since new messages are now arriving much more quickly, though it would still be nice if the spinner kept spinning continuously until I can see all new mail.  Thanks!
Comment 6 Jim Nelson 2014-01-18 00:46:29 UTC
I committed the branch to master, commit af10a76.

I'm closing this for now, Adam.  If you see another regression, feel free to re-open this or a file a new one.

The spinner ticket is still open (bug #713703) and is targeted for 0.6.  This patch also helps a bit in the time it takes to switch folders (bug #713468), which is something I'd like to improve as well in this cycle.
Comment 7 Adam Dingle 2014-01-18 08:54:16 UTC
hooray!  thanks!