Closed
Bug 1294078
Opened 9 years ago
Closed 5 years ago
Pasting many recipients as a string into the composer recipient widget is very slow or fails
Categories
(Thunderbird :: Message Compose Window, defect)
Thunderbird
Message Compose Window
Tracking
(Not tracked)
RESOLVED
WORKSFORME
People
(Reporter: aceman, Assigned: aceman)
References
Details
(Keywords: hang, perf)
Pasting many recipients as a string into the composer recipient widget is very slow and may even fail with many recipients.
Steps to reproduce:
1. Use attachment https://bugzilla.mozilla.org/attachment.cgi?id=498664 to generate many recipients
2. Specify 10000
3. Select 10000 email addresses after "To:", Copy
4. Compose a message,
5. click into recipient widget after To:
6. paste the 10000 email addresses
7. Press Enter?
Expected result:
TB should convert the recipients into 10000 individual rows.
Actual result:
This took about 10 minutes for me on current trunk (which is already optimized in this code from bug 1292097).
In between it was popping up the unresponsive script dialog pointing on
https://hg.mozilla.org/comm-central/file/tip/mail/components/compose/content/addressingWidgetOverlay.js#l1029
That is code 'addressText.replace(/.* >> /, "")'. Maybe the regexp is totally inefficient on such a long string.
After 10 minutes it failed with:
"too much recursion - addressingWidgetOverlay.js:1158:1"
It seems to be because AutomatedAutoCompleteHandler.autoCompleteNextAddress() and AutomatedAutoCompleteHandler.processAllResults() call each other.
Comment 1•9 years ago
|
||
(Show me the mail provider that lets you send to more than - say - 200 recipients.)
Enterprises may allow that.
This came from bug 619493 and you know the other bug about 4000 recipients :)
Summary: Message with too many email addresses in TO: or CC: field hangs TB. Need to sanity check display of addresses. → Pasting many recipients as a string into the composer recipient widget is very slow or fails
Comment 3•9 years ago
|
||
Enterprises maintain mailing lists. Anyway, I'm not arguing against improving or fixing things, I'm just questioning the use case.
Yes, they may have mailinglists or groups. But even in Outlook you can expand the list. So you may send or receive such a message.
I confirm the call to addressText.replace(/.* >> /, "") really is part of the problem.
It takes 8 minutes by itself.
Must be a pathological case for a regexp.
I also wonder what it really wants to do.
If the passed string is
"name1" <a@b.c>, "name2 >> name3" <d@e.f>
it will completely kill the first recipient. That surely isn't what it wanted :)
Comment 6•9 years ago
|
||
(In reply to Jorg K (GMT+2, PTO during summer) from comment #3)
> Enterprises maintain mailing lists. ... I'm just questioning the use case.
"Some" needs to be in front of that sentence. The percentage of users may be small, but it is will be an important set of users.
We see examples cited in the field, and I personally know people who routinely pasted large lists. Not all enterprises are sophisticated to do mail groups. Not all examples of lists make sense for making mail groups. Etc. (I cannot speak however to what numbers of addresses may be the norm, nor the max)
Severity: normal → major
Comment 8•5 years ago
|
||
About 10 seconds for 10,000 contact for me when using 84 beta on Mac. So WFM.
Maybe it got much better with 78 and pills?
However, memory increased 500mb
Note the address generation tool in comment 0.
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → WORKSFORME
Comment 9•5 years ago
|
||
memory increased 500mb
You don't think that's a problem?
Flags: needinfo?(vseerror)
Comment 10•5 years ago
|
||
Flags: needinfo?(vseerror)
Comment 11•5 years ago
|
||
Thanks, Wayne, for filing the new bug!
You need to log in
before you can comment on or make changes to this bug.
Description
•