From: Vernon A. Fort (no email)
Date: Fri Feb 03 2006 - 15:08:33 EST
Simon Matter wrote:
>> I have server with 16k accounts with approximately 35k messages
>> processed per day. I have had a problem with the server under high load
>> which becomes unusable - no logins. I think I narrowed the problem down
>> to the lmtpunix area when a remote user sends an email with 100+
>> recipients. It goes like:
>>
>> 1. Mail arrives
>> 2. I start seeing lmtpunix DBERROR db4: 30 lockers ... increasing
>> to around 150+ lockers
>> 3. Then the kernel starts warning of memory usage
>> 4. I start seeing lmtpunix - abnormally terminated
>> 5. The kernel reports 0 swap space
>> 5. Then master signaled to death by 9
>> 6. Then the kernel starts killing off cyrus and other processes.
>> The server then has to be reset.....
>>
>> This only happens when a spike of email arrives, primarily when a single
>> email has 100+ recipients. It appears that the lmtpunix is killing the
>> server. I initially though I
>> should place limits on the smtp connections but this now appears to be a
>> Cyrus deliver problem, i.e. I think I need to limit how much mail
>> postfix should send to the lmtpunix socket, yes/no?
>>
>> Questions:
>> 1. the lmtp currently uses the socket setup, should I use the TCP
>> configuration?
>>
>
> The socket setup is good, TCP won't be better.
>
>
>> 2. under postfix (main.cf), what *_destination_*_limits should I use?
>>
>
> I think the defaults should work fine.
> I'm quite sure the problems you see are related to Berkeley DB. I strongly
> suggest to convert all databases which are DB4 at the moment to skiplist
> and try again.
> I have converted my cyrus-imapd rpms to skiplist by default and didn't get
> any negative report until now. It would be very interesting to hear what
> comes out in your case.
>
> Simon
>
>
The O/S is gentoo. I noticed, shortly after sending the original post,
that the duplicate_db default was Berkeley no-sync (as stated in man
imapd.conf). I have used your RPMS and remember you stressing the use
of skiplist for all db backends. So I switched, explicitly setting this
in the imapd.conf and no 'deliver' problems since. This setup is
running under a VMware ESX server (not my call) so memory is starting to
become an issue. I have to be very careful when I schedule things in
the cron. MySql is staring to become a problem now. Does anyone have
any 'tuning' suggestions?
Vernon
---- Cyrus Home Page: http://asg.web.cmu.edu/cyrus Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
|
|
|