[#5341] out of memory error with 9K message mailbox
Summary out of memory error with 9K message mailbox
Queue IMP
Queue Version HEAD
Type Enhancement
State Rejected
Priority 1. Low
Owners Michael Slusarz <slusarz (at) horde (dot) org>
Requester Matt Selsky <selsky (at) columbia (dot) edu>
Created 05/08/2007 (788 days ago)
Due
Updated 12/03/2008 (213 days ago)
Assigned 11/08/2008 (238 days ago)
Resolved 12/03/2008 (213 days ago)
Attachments
Milestone
Patch No

History
12/03/2008 Michael Slusarz Comment #9
State ⇒ Rejected
Reply to this comment
We'll reject it.
11/08/2008 Chuck Hagenbuch Comment #8
State ⇒ Assigned
Reply to this comment
Now that we've moved away from c-client in HEAD, this should either be 
rejected or closed.
05/21/2007 Matt Selsky Comment #7 Reply to this comment
Do you have caching enabled?  That would increase memory usage - at 
the expense of speed of course.  Also, how are you sorting this 
mailbox?
No caching.  We're using the default sort order for the mailbox.

$ grep cache imp/config/conf.php
$conf['server']['cache_folders'] = false;
$conf['server']['cache_msgbody'] = false;
$conf['mboxcache']['use_mboxcache'] = false;
The only way you can determine a mailbox slice is if you know the 
contents of the entire mailbox.  i.e., the only way you can tell 
what messages are on page 2 is if you sort the entire mailbox.   
Don't see anyway around this.
OK.
05/21/2007 Matt Selsky Comment #6 Reply to this comment
BTW, did you really have a 24 MB memory limit with IMP 3?  If I 
remember correctly, you really couldn't do anything at all in IMP 3 
unless you turned memory_limit off completely, let alone set it at 
24 MB.
You are correct.  We have no memory limit for IMP 3.  Apache memory 
usages seems to be around 120MB for 110K messages.  Does that sound 
reasonable?
05/21/2007 Michael Slusarz Comment #5 Reply to this comment
OK, but IMP 3.x was able to open 100K message mailboxes.  And quickly too.
BTW, did you really have a 24 MB memory limit with IMP 3?  If I 
remember correctly, you really couldn't do anything at all in IMP 3 
unless you turned memory_limit off completely, let alone set it at 24 
MB.
05/21/2007 Michael Slusarz Comment #4 Reply to this comment
OK, but IMP 3.x was able to open 100K message mailboxes.  And quickly too.
Do you have caching enabled?  That would increase memory usage - at 
the expense of speed of course.  Also, how are you sorting this mailbox?

btw, I definitely see *much* slower mailbox accesses in IMP 3.x than 
4.x.  Not to mention we cache mailbox lists in 4 and we never did this 
in 3.
Why do we need to use so much memory to show the message index?   
There are only 20 mesage headers on the page...  Just curious.
The only way you can determine a mailbox slice is if you know the 
contents of the entire mailbox.  i.e., the only way you can tell what 
messages are on page 2 is if you sort the entire mailbox.  Don't see 
anyway around this.
05/21/2007 Matt Selsky Comment #3 Reply to this comment
OK, but IMP 3.x was able to open 100K message mailboxes.  And quickly too.

Why do we need to use so much memory to show the message index?  There 
are only 20 mesage headers on the page...  Just curious.
05/20/2007 Michael Slusarz Comment #2
State ⇒ Stalled
Reply to this comment
24+ megs of memory to view a 9,000 message mailbox seems reasonable to 
me (t-bird takes up *way* more than 24 megs to view a mailbox of this 
size).  Don't think we can really do much about this without changing 
the internal imap processing in c-client.
05/09/2007 Jan Schneider Assigned to Michael Slusarz
State ⇒ Assigned
 
05/08/2007 Matt Selsky Comment #1
Summary ⇒ out of memory error with 9K message mailbox
Type ⇒ Enhancement
Priority ⇒ 1. Low
State ⇒ New
Queue ⇒ IMP
Reply to this comment
I think Michael wanted to be notified about memory errors when devs 
use 24M memory...

When I try to open a 9K message mailbox (sent-mail), I get the 
following error:

Fatal error: Allowed memory size of 25165824 bytes exhausted (tried to 
allocate 1572865 bytes) in /etc/httpd/htdocs/horde/imp/lib/Mailbox.php 
on line 689

php.ini has these memory settings:

memory_limit = 24M