Closed
Bug 46233
Opened 24 years ago
Closed 21 years ago
Attachments downloaded again when saved
Categories
(MailNews Core :: MIME, defect, P3)
MailNews Core
MIME
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: phil, Assigned: Bienvenu)
References
Details
(Keywords: perf, Whiteboard: [nsbeta3-])
Attachments
(1 file, 3 obsolete files)
2.70 KB,
patch
|
sspitzer
:
superreview+
|
Details | Diff | Splinter Review |
Using 2000-07-21-08 commercial build on NT
1. Send yourself a large HTML document as an attachment (not a web page)
2. Read the message, HTML document displays inline
3. Save the attachment
Actual: it takes ~10 secs (esp. over a slow link) to download some or all of the
message again, status bar says "downloading message..."
Expected: since the HTML document was displayed inline, it should be quickly
accessible to be saved.
Comment 1•24 years ago
|
||
Hmm...will have to see why the cache isn't stepping in here.
Scott, any ideas?
- rhp
Status: NEW → ASSIGNED
Target Milestone: --- → M18
Comment 2•24 years ago
|
||
Hi Scott,
This was the cacheing issue I was telling you about. Thanks!
- rhp
Assignee: rhp → mscott
Status: ASSIGNED → NEW
Updated•24 years ago
|
Target Milestone: M18 → ---
Comment 7•23 years ago
|
||
Occurs for all attachments... Very painful!
I have noticed: if the attachment appears inline, right-click over the inline
object and select "Save As..." will save to disk from the cache, no network
activity at all, yet doing the same from the attachments pane reloads it from
the network.
This is a big problem if you are on a slow link and have multiple messages with
large attachments. I spent over thirty minutes downloading some news, _twice_,
saving the damned attachments. I'm on Linux.
If this isn't nscatfood nothing is. BTW, sometimes the same reloading from the
network occured in Nav4.x and was one of the more infuriating bugs.
OS: Windows NT → All
Hardware: PC → All
Summary: HTML attachment downloaded again when saved → Attachments downloaded again when saved
Comment 9•23 years ago
|
||
Darin, Doug: you might like to take a peek and confirm the attachments are
indeed in the cache and that the mailnews code can get to them; if not, this is
not mscott's :)
Comment 10•23 years ago
|
||
Should this really be in the MIME component?
Comment 11•23 years ago
|
||
*** Bug 92875 has been marked as a duplicate of this bug. ***
Comment 12•23 years ago
|
||
*** Bug 87311 has been marked as a duplicate of this bug. ***
Comment 13•23 years ago
|
||
*** Bug 87344 has been marked as a duplicate of this bug. ***
Comment 14•23 years ago
|
||
Antonio,
Seems reasonable to dupe this against bug 93208.
Comment 15•23 years ago
|
||
This is not a duplicate of bug 93208 - read the bug descriptions closely.
Comment 16•23 years ago
|
||
Ok I got it now. Thanks Hakan, bienvenu's comment also helped explain the
difference in the other bug, what threw me was that they are about downloading
messages more than once, vs the distinct differences here.
Comment 17•23 years ago
|
||
when mozilla open a mail from imap server,it will only cache mail body,so when
save the attachment,mozilla will reload from imap server for attachment. So i
want to cache attachment when mozilla run in mimemoz2.cpp,but i can't get the
inputstream object,i seriously want to fix this bug,but now i really need
afflatus.who can give some advice!!!!!
Comment 18•23 years ago
|
||
David: is this really MIME?
Phil: Do you see this on IMAP and/or POP?
Assignee | ||
Comment 19•23 years ago
|
||
This is really imap, and Phil is long gone. I would think that this is bug is
invalid in most cases now that we use the memory cache (it would still exist in
cases where the message had both inline and non-inline parts, because those
messages don't get put in the memory cache). I don't know how to fix that case,
other than putting the html page in the memory cache like we do for images, or,
put the partial message in the memory cache and handle requests for the
attachments we have downloaded by reading from the memory cache. I don't know
how to do the former, and the latter is extremely dangerous because if we put
partial messages, in the memory cache, we have to be extremely careful not to
think we have the whole message in the cache for things like forward, etc. I
don't recommend either approach.
Comment 20•23 years ago
|
||
Hi Bienvenu,i add a patch,this patch can fix thix bug for imap4,so please rv my
patch,and please give me some advice.this patch can make mozilla open mail body
from cache,when i save a attachment.but when mozilla open a mail from a
IMAP4Rev1 server,if the mail have attachment,mozilla will only load mail
content,and siplay mail,but mozilla didn't load mail's attachment,so i can't
cache attachment before i save the mail's attachment.
Hi Mscott,please Assign this bug to me,and please rv my patch
Assignee | ||
Comment 21•23 years ago
|
||
I've explained this in a private e-mail a week ago, but I'll put the info in here:
After stepping through the code, it looks to me like the problem is that for
html attachments, we're downloading the whole message (instead of just the html
part) to save the html attachment. I believe this is because the url for the
attachment is of a form that we are not parsing correctly in
nsImapService::FetchMimePart. If you set a breakpoint here, and compare the urls
for saving a .exe attachment vs a .html attachment, you'll see the difference.
One possibility is to fix the url stored in the attachment data for the .html
attachment to be like the .exe attachment url. I'm not familiar with this code,
so I'm not sure why they're different.
good format: "imap-message://bienvenu@nsmail-1/Personal#7568?section=2&part=1.2"
bad
imap-message://bienvenu@nsmail-1/Personal#7318imap://bienvenu@nsmail-1:993/fetch>UID>/Personal>7318?part=1.2"
the good one is for non-inline attachments like .exe files. The bad one is for a
.html attachment. I tried a jpeg as well, and it had the bad format:-
"imap-message://bienvenu@nsmail-1/Personal#150imap://bienvenu@nsmail-1:993/fetch>UID>/Personal>150?part=1.2"
Note that the "bad format" is the imap url format with the fetch instruction
coded in.
Comment 22•23 years ago
|
||
Hi Bienvenu,i don't know whether,you can see my comment,but i will explain what
elements of my fix.
In imap4,mozilla will load all mail body from imap4 server and pick up the
attachment from mail body ,when a attachment be saved in the first,so my fix is
do that,when save a attachment,i will force mozilla load mail body from
cache,because mozilla will cache all mail content when i open a mail,so after i
open a mail,all of the mail's content is cached by mozilla.
In imap4rv1 ,mozilla will only load part of mail,that can be displayed,so i
can't fix it in here,because i can't load all of mail'content from cache.
Now have some problem, When i add your patch for bug93208,mozilla won't
display all img in imap4rv1,i hope you can see my patch,and tell me how to judge
the types of the imap server in nsImapMockChannel::OpenCacheEntry,because your
patch is for imap4rv1,i must avoid conflict with your patch.
Assignee | ||
Comment 23•23 years ago
|
||
I'll just point you at my previous comment again. I don't think the way you're
fixing this is the right way to fix this. The way to fix this is to fix the
attachment url. At least that's the approach we're going to try.
Comment 24•23 years ago
|
||
i test this fix in imap4,all attachment can load from cache,so this way is
force mozilla pick up attachment from mail body in the cache,but in imvp4rv1,i
can't do it.i notice the "section" in imap url,i will try to debug it.
Assignee | ||
Comment 25•23 years ago
|
||
with imap4rev1 servers (the vast majority of servers out there, btw), we fetch
the body structure of the message and don't fetch the non-inline parts when we
display the message. This makes things very complicated, as I've explained in
this bug, and related bugs.
Comment 26•23 years ago
|
||
In imap4rv1,i can't get non-inline parts from cache,but in imap4,i can do it,so
my patch is for imap4,but i don't know how do judge the types of the imap
server in nsImapMockChannel::OpenCacheEntry?
Comment 27•23 years ago
|
||
Hi bienvenu,thank for your advice,i change my patch to ignore img url,so when
mozilla will display img,i don't change url,i think url is a key in cache,we
can get mail's data from cahce with key,so in imap4,when mozilla display a
mail ,it will cache all mail'data that include non-inline parts,so i will force
mozilla fetch attachment from cache,in imap4rv1,when mozilla display a mail,it
will only mail body and inline parts,so when i save a attachment ,mozilla will
load from imap server,but all inline parts will cache,like html file,so i can
force mozilla save the html file from cache,so i must change ths key when
mozilla query cache with key.
Comment 28•23 years ago
|
||
this change is to avoide conflict with bug93208's patch,so please rv my patch!
Assignee | ||
Comment 29•22 years ago
|
||
again, I believe the correct fix is to fix the code that's generating these part
urls in the attachment menu, not to patch the imap cache code to deal with the
mal-formed urls.
Comment 30•22 years ago
|
||
Looks like this one is hibernating.
I'm seeing this bug with uuencoded attachments. When I open the message from
IMAP server, Mozilla loads entire encoded text attachment too. Save the
attachment and it happens again. If you get impatient and move into 2nd message
while the attachment from the 1st one is downloading, you get a partial download.
Comment 31•22 years ago
|
||
*** Bug 176088 has been marked as a duplicate of this bug. ***
Comment 32•22 years ago
|
||
Related: Bug 181842
Comment 33•22 years ago
|
||
Just to confirm that this bug still exists in release 1.2. For people working on
slow links, this merits a priority > P3 -- try it sometime.
Maybe the following should be an RFE (or even 2 RFEs), but I will drop them here
since they are so closely related and could potentially be addressed at the same
time as this bug:
1) An option to not (automatically) download all attachments, or just not
download attachments greater then N bytes would be welcome for users on slow links.
2) When an attachment is displayed in the mail window, there appears to be no
way to get back to the initial mail without selecting another mail (if there is
one) then re-selecting the mail you want to see.
*** Bug 144346 has been marked as a duplicate of this bug. ***
Comment 35•22 years ago
|
||
My testings show that attachments in a news group message ARE downloaded with
the message. The text of the message is NOT displayed until all of the message
plus all attachments are loaded. Hitting <ctrl-u> to get the source code, shows
that the attachment(s) are there, included inside the message. If I want to save
the attachment, a zip file for example, Mozilla proceed to download a new copy
of it.
Alain
QA Contact: trix → stephend
Comment 36•22 years ago
|
||
is Bug #131586 copy of this one ?
Comment 37•22 years ago
|
||
There may be a relation or some similarity. This one concern attachements in
news messages. The attachements ARE downloaded before vewing the message, then
again if you want to save them. An image saved by the right menu is instantly
saved, but redownloaded if you then save it using the attachment list.
Comment 38•22 years ago
|
||
as I see it
probably same patch could fix both problems
if before downloading message there is verification
is it localy stored (and if it is verify has it been shanged since)
Comment 39•22 years ago
|
||
This one is for news messages? I didn't know that..
FWIW, if you maximize the attachment by double-clicking on it, it's NOT
downloaded again for the new window. You may then do "save page" and it's saved
without downloading again. Concerning IMAP mail.
Comment 40•22 years ago
|
||
It is related to bug 183068 and 181842.
Comment 41•21 years ago
|
||
This issue is also a shocker for multimegabyte images being displayed inline.
They must be downloaded again to be saved, and given the slow download speeds
(see bug 182383) can be major slowdown.
I've seen a user sit for 30 seconds waiting for a message with a large image to
download, then have to wait for the same time again after saving the image to disk.
I'm fairly sure the server in question (MDaemon 3) is NOT imap4r1 compatable,
however speeds aren't much better working from Cyrus in some quick tests I did.
Craig Ringer
Comment 42•21 years ago
|
||
Um, is it just me, or has this bug been fixed? Using Save Image from a binaries
newsgroup message with an image attachment, the image is being saved immediately
without a re-download. Can anyone confirm?
Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.5b) Gecko/20030820
Assignee | ||
Comment 43•21 years ago
|
||
Mike, if you save the image by right clicking on the image itself, we get the
image from the memory cache. But, if you use the attachment list, and save as
from there, we don't get the attachment from the memory cache, because, as I
said before, the url in the attachment menu doesn't match what we've put in the
memory cache.
Assignee: mscott → bienvenu
Comment 44•21 years ago
|
||
Eek, I just spent half an hour saving 24 attachments of a message. All the
attachments were shown inline (text and jpg's) and it took initially about 65
seconds to load the message to display. We need to get this fixed..
Assignee | ||
Comment 45•21 years ago
|
||
I'll try to fix the URI's run when we do save so that they hit the memory cache
correctly.
Status: NEW → ASSIGNED
Comment 46•21 years ago
|
||
I poked around a bit and found that we mess a perfectly good url in
nsImapService.cpp around line 600 by adding extra stuff into it. I changed it so
that only "?header=print" is appended if printing and it seemed to cure the two
cases I tried.
In nsMessenger::SaveAttachment, I also removed a suspicious assignment of
fullMessageUri to messageUri, but didn't have time to check it thoroughly yet.
Thoughts?
Assignee | ||
Comment 47•21 years ago
|
||
Ere, you're right about the first part. I'm not sure the assignment is
suspicious, or, rather, it might be the whole problem - I'll have to step
through the code, and try it with local mail as well.
Assignee | ||
Comment 48•21 years ago
|
||
OK, I think that in some cases the code ~line 600 of nsImapService.cpp is
required, e.g., double clicking on an attachment in the attachment list.
Comment 49•21 years ago
|
||
would soulution for this solve also bug #131586
it is not that only attachments are downloaded
again and again but whole messages are redownloaded
on every change of focus (and again solving that issue
would probably solve this one too :)
Comment 50•21 years ago
|
||
That raises the question why the is URI different when double-clicking and when
saving. I think it shouldn't make any difference for FetchMimePart().
Assignee | ||
Comment 51•21 years ago
|
||
yes, I'll have to sit down and figure out the various code paths.
Assignee | ||
Comment 52•21 years ago
|
||
I think the problem is here in nsMessenger::SaveAttachment - mimePart ends up
being the whole fetch url, so fullMessageUri is ends up being two uri's
concatenated together.
{
PRInt32 sectionPos = urlString.Find("?section");
nsCString mimePart;
urlString.Right(mimePart, urlString.Length() - sectionPos);
// ###this is bogus - this is much more than the mime part - it's the
whole uri
fullMessageUri.Append(mimePart);
messageUri = fullMessageUri.get();
Assignee | ||
Comment 53•21 years ago
|
||
I don't know if this fixes the problem, but it prevents us from generating that
very wrong uri.
Attachment #131711 -
Flags: review?(ere)
Comment 54•21 years ago
|
||
*** Bug 181842 has been marked as a duplicate of this bug. ***
Comment 55•21 years ago
|
||
*** Bug 210996 has been marked as a duplicate of this bug. ***
Assignee | ||
Comment 56•21 years ago
|
||
this fixes it so that both save as and open get the attachments from the memory
cache.
Attachment #67388 -
Attachment is obsolete: true
Attachment #68096 -
Attachment is obsolete: true
Attachment #131711 -
Attachment is obsolete: true
Assignee | ||
Updated•21 years ago
|
Attachment #139278 -
Flags: superreview?(mscott)
Updated•21 years ago
|
Attachment #139278 -
Flags: superreview?(mscott) → superreview+
Comment 57•21 years ago
|
||
fix checked in.
Status: ASSIGNED → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
Comment 58•21 years ago
|
||
Does this fix in any way affect or improve the way e-mails with attachments are
moved from the inbox to the local folders (or another account's folder)?
Sorry for bugspam, but a query for "attachment local folders" wasn't successful.
Assignee | ||
Comment 59•21 years ago
|
||
no, it has no effect on that. Moving messages to local folders or other accounts
fetches the whole message. If it's in the memory cache, the cached copy should
be used...
Assignee | ||
Comment 60•21 years ago
|
||
*** Bug 119049 has been marked as a duplicate of this bug. ***
Assignee | ||
Comment 62•21 years ago
|
||
yes, I'll put it on the m4 branch.
Assignee | ||
Comment 63•21 years ago
|
||
fixed on m4 branch.
Updated•20 years ago
|
Attachment #131711 -
Flags: review?(ere)
Updated•20 years ago
|
Product: MailNews → Core
Updated•16 years ago
|
Product: Core → MailNews Core
You need to log in
before you can comment on or make changes to this bug.
Description
•