Fatal error: failed to mmap cache file

2007-03-27 Thread Ian P. Christian

I have a mailbox on my server wither just under 6600 emails in it.

The cyrus.cache file is 1/2 a gig in size:

# ls -lah cyrus.*
-rw--- 1 cyrus mail 536M Mar 27 13:46 cyrus.cache
-rw--- 1 cyrus mail  171 Mar 27 13:12 cyrus.header
-rw--- 1 cyrus mail 386K Mar 27 13:46 cyrus.index


When a user attempts to access their mailbox, I see this in the logs:

imaplo[29053]: login: localhost [127.0.0.1] [EMAIL PROTECTED] 
plaintext User logged in
imaplo[29053]: IOERROR: mapping cache file for 
domain.com!user.postmaster: Cannot allocate memory

imaplo[29053]: Fatal error: failed to mmap cache file
master[29953]: process 29053 exited, status 75
master[29953]: service imaplo pid 29053 in BUSY state: terminated abnormally


Can anyone suggest what might be causing this?

Kind Regards,

--
Ian P. Christian ~ http://pookey.co.uk

Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: Fatal error: failed to mmap cache file

2007-03-27 Thread Ian P. Christian

Andrew Morgan wrote:
Well clearly there isn't enough memory available to mmap a file that 
large...  :)


Thanks ;)

I'm more curious why that cyrus.cache file is so large.  6600 emails is 
not an unusually large amount to have in a mailbox.  For example, I have 
a mailbox with 1739 messages in it, and the cyrus.cache file is only 1.6 
MB. Maybe the cyrus.cache file is corrupted or retaining old cache 
entries? It should be safe to delete that file and reconstruct the 
mailbox, because no additional information is stored in the cache file 
which is not already present in the message files.


I too thought it was odd, nearly 50% of the size of the mailbox was the 
cache file itself.  I did try what you suggested, and unfortunately the 
problem remained (atleast... I *think* I tried it...)


However... I've now fixed the problem

Turned out 95% of the mail in there was caused by a mail loop, and was 
NDRs.  A quick grep and rm later, and I was down to a small mailbox, 
which when reconstructed then went back to working.


I think somewhere along the lines I might have found a bug... but I 
can't prove it :)


Thanks for your time Andrew

--
Ian P. Christian ~ http://pookey.co.uk

Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html