Investigating cheating on matching address headers to improve search/filter speed

VERIFIED FIXED in Thunderbird 38.0

Status

VERIFIED FIXED
4 years ago
3 years ago

People

(Reporter: jcranmer, Assigned: jcranmer)

Tracking

(Blocks: 1 bug, {perf})

Trunk
Thunderbird 38.0
x86_64
All
Dependency tree / graph
Bug Flags:
in-testsuite -

Thunderbird Tracking Flags

(thunderbird38+ fixed)

Details

Attachments

(1 attachment)

(Assignee)

Description

4 years ago
Parsing addressing headers is relatively expensive. The logic we use in the search code is basically "matches any name or any email"--if we're using the Contains/DoesntContain match properties, we don't even need to parse the address headers and we could use a mere decoded header instead (potentially faster if bug 1089229 is fixed and extended to addressing headers). Even the other matches could be filtered with a prepass if we expect them to fire relatively infrequently.

Updated

4 years ago
Keywords: perf
OS: Linux → All
(Assignee)

Comment 1

4 years ago
Created attachment 8559279 [details] [diff] [review]
Oh hey, this is fast

This requires the patches over in bug 1089298 to apply. Since quick search only does a Contains match, this makes it REALLY fast.
Assignee: nobody → Pidgeot18
Status: NEW → ASSIGNED
Attachment #8559279 - Flags: review?(kent)
(Assignee)

Updated

4 years ago
tracking-thunderbird38: --- → ?

Updated

4 years ago
Depends on: 1089298

Comment 2

4 years ago
Comment on attachment 8559279 [details] [diff] [review]
Oh hey, this is fast

Review of attachment 8559279 [details] [diff] [review]:
-----------------------------------------------------------------

This need for patch is a good example of the types of issues we are going to continue to face if we try to convert most things to javascript. You have this beautiful javascript code that does precise mime processing - but then you have to hack around it because it is slower than we want, and we end up introducing approximations like this to get the speed up.

Still, I think that we need to do this. But we will need to be on the lookout for unforeseen issues with this search approximation.
Attachment #8559279 - Flags: review?(rkent) → review+
(Assignee)

Comment 3

4 years ago
https://hg.mozilla.org/comm-central/rev/f8b8e522d2dc
Status: ASSIGNED → RESOLVED
Last Resolved: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 38.0

Updated

4 years ago
status-thunderbird38: --- → fixed

Comment 4

4 years ago
thanks. speed is much better
Status: RESOLVED → VERIFIED
Summary: Investigating cheating on matching address headers → Investigating cheating on matching address headers to improve search/filter speed
(Assignee)

Updated

4 years ago
Flags: in-testsuite-

Updated

3 years ago
tracking-thunderbird38: ? → +
You need to log in before you can comment on or make changes to this bug.