evolution chokes when a large txt file is in attachment

Bug #21178 reported by Albert Vilella
24
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Evolution
Confirmed
Wishlist
evolution (Ubuntu)
Invalid
Low
Ubuntu Desktop Bugs

Bug Description

If someone sends a message with one or several big attached files of type *.txt,
evolution will try to parse and show the attachments, choking from the amount of
memory needed to do so:

1 - An email with big txt attachment lands Inbox
2 - User clicks once over email to oversee it (one click, no double click)
3 - Evolution automatically loads the attachments into memory, thus choking
because of RAM requirements.

Maybe one would like to see Evolution not automatically loading the big txt
attachment files. For example, if a big jpeg file is attached, it is not
loaded/shown by default.

http://bugzilla.gnome.org/show_bug.cgi?id=240759: http://bugzilla.gnome.org/show_bug.cgi?id=240759

Revision history for this message
Sebastien Bacher (seb128) wrote :

Thanks for your bug. There is a feature request upstream about that:
http://bugzilla.gnome.org/show_bug.cgi?id=240759. What kind of box do you have?
How many lines does the file have? How slow it is to open it?

Revision history for this message
Albert Vilella (avilella) wrote :

On a Athlon-XP 1.8GHz with 512MB RAM, and an email with two files, one of 1.1M
and another of 121K but with very long lines, it takes about 30 seconds to
oversee the email, and about 300MB of extra RAM with respect of another "short"
email.

Revision history for this message
Sebastien Bacher (seb128) wrote :

Could you attach an example of a such mail? For an 1M text file, it takes a ~4
seconds here and there is no such ressource change according to top. It does
that when clicking on the attachment button, opening the mail itself is an
immediate action and works fine.

Revision history for this message
Albert Vilella (avilella) wrote :

Created an attachment (id=3720)
one of two

one of the example files

Revision history for this message
Albert Vilella (avilella) wrote :

Created an attachment (id=3721)
two of two

two of two example file - I gzipped it but this one should be unzipped before
used as a test.

use both files as txt in the same email as test

Changed in evolution:
assignee: seb128 → desktop-bugs
status: Unconfirmed → Confirmed
Revision history for this message
Mario Manno (manno) wrote :

Evolution 2.22.3 will give up rendering after trying for some time and display a warning: "Evolution cannot render this email as it is too large to handle. You can view it unformatted or with an external text editor."

You can create a simple test file with
   perl -e 'print "\n"x1000000' > /tmp/evil.txt

The upstream bug is about evolution honoring "Content-Disposition: inline" for attachments.

There are several issues here:
* there is no option to ignore content-disposition:inline to prevent harmful attachments from displaying automatically (#229013)
* rendering texts uses too much memory and cpu (1mb newlines => 50% ram)
* after displaying the warning evolution continues to consume memory and does not free it until program exits

Changed in evolution:
status: Confirmed → Triaged
Revision history for this message
Albert Vilella (avilella) wrote :

Tried /tmp/evil.txt with version 2.24.2-0ubuntu1, it will not open the attachment by default, which is good, but if one tries to visualise the file, it will choke for a while due to the RAM requirements. Once digested, evolution won't crash but will be slow due to the swapping.

Revision history for this message
Franck (alci) wrote :

In latest Karmic, attaching a big text file (xml in my case) in a _new_ mail will produce the same symptoms.

1. create a new mail
2. attach a big xml file (1.7Mb in my case)

evolution eats all memory and chokes.

I had to tarbz the file to be able to send it with evolution !

Changed in evolution:
importance: Unknown → Wishlist
Revision history for this message
Jörg Frings-Fürst (jff-de) wrote :

bug from 2005 - version not longer supported
change status to invalid

Changed in evolution (Ubuntu):
status: Triaged → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.