dataflake.org

Home Documentation Software Old Stuff

Memory usage for bulk of large mails (Resolved)

Request MaildropHost -- bug report -- by Maik Jablonski
Posted on Nov 23, 2007 5:45 am
Subscribe

Enter your email address to receive mail on every change to this issue.

Entries (Latest first)


  Resolve by Jens Vagelpohl on Nov 25, 2007 7:11 am
  Thanks for the patch, this change is now checked in:

http://svn.dataflake.org/?view=rev&revision=1439

 

  Initial Request by Maik Jablonski on Nov 23, 2007 5:45 am
  MaildropHost registers each mail within a ZODB-Transacion. Problem is that for many large mails the memory consumption execeeds any reasonable limits (e.g. for 16.000 Mails with 1MB Attachment the memory usage will be 15GB) which brings the server down.

I don't see any need for transporting the mail-content within the transaction (only the lockfile-reference is needed for rollback/commit), so my proposal is to remove the content after the mail is "pre"-sent.

--- MaildropHost.py.orig 2007-11-23 11:40:13.000000000 +0100
+++ MaildropHost.py 2007-11-23 11:39:48.000000000 +0100
@@ -211,6 +211,10 @@
else:
self._lockfile = lock_path

+ # Remove content to minimize memory consumption
+ self.m_to = None
+ self.m_from = None
+ self.body = None

class TransactionalEmail(TransactionalMixin, Email):
""" Transaction-aware email class """