On 02/05/2013 09:25 PM, Stan Hoeppner wrote:
On 2/5/2013 12:15 PM, Arnaud Abélard wrote:
I changed the vsz_limit to 512MB and it seems better, but I'm still surprised my mailbox actually hit the memory limit since I doubt it's most used one.
According to the wiki, vsz_limit only affects login processes, not IMAP processes, which is odd given the second error you posted, which seems to indicate a relationship between vsz_limit and imap.
Actually, service { vsz_limit } replaced mail_process_size (at least according to what dovecot said upon restart...) so service imap { vsz_limit=512MB } which i added earlier actually does what you suggested.
dovecot: imap(abelard-a): Error: mmap() failed with file /vmail/a/b/abelard-a/dovecot.index.cache: Cannot allocate memory
imap(abelard-a): Fatal: pool_system_realloc(131072): Out of memory
This error suggests your mail_process_size variable is set too low. If it is currently set to 128MB, increase it to 512MB. The bulk of this memory is used for mmap()ing files, and is virtual, not physical. Thus you don't actually need 51GB of RAM to support 100 users.
Also, a dovecot.index.cache file of size 224MB seems rather large. My largest list mail folder is 150MB, contains 17,647 msgs, and has a dovecot.index.cache file of only 16MB. I use mbox. This would seem to suggest you may have a single folder with tens of thousands of msgs in it. Or maybe indexes are handled differently for your mailbox format--I've not used any others. If the former, I suggest you cull your large folders to get them down to manageable size.
Yep I have a huge INBOX folder right now, I haven't archived my 2011 mail yet (I keep the previous year in my INBOX).
Thanks,
Arnaud