Open Bug 551209 Opened 15 years ago Updated 9 months ago

Gloda should asynchronously enter/open folders during indexing

Categories

(MailNews Core :: Database, defect)

defect
Not set
major

Tracking

(Not tracked)

People

(Reporter: asuth, Unassigned)

References

(Blocks 3 open bugs, )

Details

(Keywords: perf, Whiteboard: [gloda key:P1][gs])

Attachments

(1 obsolete file)

Gloda's indexing logic ignores the potentially high cost of entering a folder while indexing. Gloda could try and defer folder entry until the user is idle a bit. Ideally, we could introduce a method to asynchronously open a folder. Since gloda is going to get blamed for autosync opening folders too, this would also address an overall problem. bienvenu, you have previously indicated that mork supports parsing incrementally. How hard would it be to modify nsMsgDatabase to support the concept that it is asynchronously parsing with automatic conversion to synchronous when a synchronous-assuming API decides it wants that?
bienvenu (In reply to comment #0) > bienvenu, you have previously indicated that mork supports parsing > incrementally. How hard would it be to modify nsMsgDatabase to support the > concept that it is asynchronously parsing with automatic conversion to > synchronous when a synchronous-assuming API decides it wants that?
Keywords: perf
Depends on: 570582
Andrew, this opening happens on UI thread, correct? How does this currently rank relative to others in [gloda key] list and plans for v3.3? Roland nit: I not sure http://getsatisfaction.com/mozilla_messaging/topics/v3_is_slow_and_hangs_on_determining_which_messages_to_index is still a great match up to this bug. But there may be other topics that are.
Yes, all folder opening happens on the UI/main thread. Thanks to bienvenu having done all the hard work already, this is a reasonably simple change which puts it well ahead of most other things marked gloda key. The counterpoint is that it's not completely trivial because we want to make super sure that we don't accidentally leave databases half-opened and that may be hard to test for.
Summary: Gloda could avoid entering folders when the user is not idle enough or asynchronously enter folders → Gloda should asynchronously enter folders
Assignee: nobody → jonathan.protzenko
Status: NEW → ASSIGNED
Protz, asuth, are you working on this?
Flags: needinfo?(jonathan.protzenko)
I'm not working/won't be working it, but am very happy to review patches.
Same here :)
Flags: needinfo?(jonathan.protzenko)
Status: ASSIGNED → NEW
(In reply to Andrew Sutherland (:asuth) from comment #5) > I'm not working/won't be working it, but am very happy to review patches. (In reply to Jonathan Protzenko [:protz] from comment #6) > Same here :) could one of you mark whiteboard as being willing to mentor? That will help raise visibility this is known to cause major performance jank (for lack of a better term), so >major
Assignee: jonathan.protzenko → nobody
Severity: normal → major
Flags: needinfo?(bugmail)
Keywords: helpwanted
Summary: Gloda should asynchronously enter folders → Gloda should asynchronously enter/open folders
I'm pretty hosed with Gaia's e-mail app and have swapped out a lot of my understanding of Thunderbird, so I don't think mentorship is in the cards for at least a few months from me.
Flags: needinfo?(bugmail)
Blocks: 833661
Blocks: 1023000
Keywords: helpwanted
Whiteboard: [gloda key][gs] → [gloda key:P1][gs]
Blocks: 589310
Summary: Gloda should asynchronously enter/open folders → Gloda should asynchronously enter/open folders during indexing
Attachment #9385898 - Attachment is obsolete: true
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: