I've discussed this problem some time ago, known as forking problem. Turned
out to be db3 locking problem or whatever. Anyway, here's something I
experience right now:

Let me begin with my system description.

It's Linux RedHat 7.0 with kernel 2.4.2-0.1.28smp running at dual p3/550
with 768 mb ram and several scsi hdds. There are >100000 registered users in
the system, however only half are active. Currently I am running:

1) cyrus-imapd 2.0.16
2) pam_mysql
3) libdb-3.3
4) sendmail 8.12.0
5) kaspersky avp for linux
6) poprelay

Sendmail works in queue mode, -q1m

During that minute it is queuing e-mails everything is fine -- e-mails are
checked for viruses and if everything is fine, placed in queue. At peak
time, the system receives up to 300-400 e-mails per that minute. Once it
starts to deliver the e-mails locally, the problems begin. sendmail opens
huge number of connections to localhost, which look like that:

...
sendmail: ./f8RAK8Jw015602 localhost: client DATA sta
sendmail: ./f8RAJ81C015613 localhost: client DATA sta
sendmail: ./f8RAJ8WU015726 localhost: client DATA sta
sendmail: ./f8RAJ8Vm015734 localhost: client DATA sta
sendmail: ./f8RAK372016522 localhost: client DATA sta
sendmail: ./f8RAK6pN016557 localhost: client DATA sta
sendmail: ./f8RAK6fs016567 localhost: client DATA sta
...

and the system launches approx the same number of lmtpds. 

The e-mails are being delivered, but EXTREMELY slow. I don't know where the
problem is, however the system is unable to deliver more than 100-200
e-mails per minute. As you understand, while it is delivering 100-200
e-mails from queue, 300-400 new e-mails come. At next minute it opens even
more lmtpds and within 30-40 minutes it just dies with memory overflow
message.

I've tried everything, but don't know where the problem is. Here are my
config files:

cyrus.conf:
START {

  mboxlist      cmd="ctl_mboxlist -r"

  deliver       cmd="ctl_deliver -r"

}

 

SERVICES {

  imap          cmd="/usr/cyrus/bin/imapd" listen="imap" prefork=1

  pop3          cmd="/usr/cyrus/bin/pop3d" listen="pop3" prefork=1

  sieve         cmd="/usr/cyrus/bin/timsieved" listen="sieve" prefork=0

  lmtpunix      cmd="/usr/cyrus/bin/lmtpd" listen="/var/imap/socket/lmtp"
prefork=1 maxchild=50                         
}

 

EVENTS {

  checkpoint    cmd="ctl_mboxlist -c" period=30

  #delprune     cmd="ctl_deliver -E 3" period=1440

}  

imapd.conf:
configdirectory: /var/imap

partition-default: /inbox1

partition-usr2: /inbox2

partition-usr3: /inbox3

partition-usr4: /inbox4

partition-usr5: /inbox5

admins: support

allowanonymouslogin: no

autocreatequota: 5000

quotawarn: 90

defaultacl: lrswipcda

sievedir: /var/imap/sieve

postmaster: support

reject8bit: no

sasl_pwcheck_method: pam


sendmail.mc:
include(`/usr/lib/sendmail-cf/m4/cf.m4')

VERSIONID(`linux setup for Red Hat Linux')dnl

OSTYPE(`linux')

define(`confDEF_USER_ID',``8:12'')dnl

undefine(`UUCP_RELAY')dnl

undefine(`BITNET_RELAY')dnl

define(`confTO_CONNECT', `1m')dnl

define(`confBIND_OPTS',`-DNSRCH -DEFNAMES')dnl

define(`confTRY_NULL_MX_LIST',true)dnl

define(`confDONT_PROBE_INTERFACES',true)dnl

define(`confTO_IDENT',`0')dnl

define(`confLOCAL_MAILER',`cyrus')dnl

define('ALIAS_FILE','/etc/aliases')dnl

define(`STATUS_FILE', `/var/log/sendmail.st')dnl

define('AVP_LOCAL_HACK')dnl

FEATURE(`smrsh',`/usr/sbin/smrsh')dnl

FEATURE(`mailertable',`hash -o /etc/mail/mailertable')dnl

FEATURE(`virtusertable',`hash -o /etc/mail/virtusertable')dnl

FEATURE(redirect)dnl

FEATURE(always_add_domain)dnl

FEATURE(use_cw_file)dnl

FEATURE(`access_db')dnl

FEATURE(`blacklist_recipients')dnl

FEATURE(dnsbl, `blackholes.mail-abuse.org', `Rejected - see
http://www.mail-abuse.org/rbl/')dnl                        
FEATURE(dnsbl, `dialups.mail-abuse.org', `Dialup - see
http://www.mail-abuse.org/dul/')dnl                              
FEATURE(dnsbl, `relays.mail-abuse.org', `Open spam relay - see
http://www.mail-abuse.org/rss/')dnl                      
FEATURE(`delay_checks')dnl

Klocalip hash -a<MATCH> /etc/mail/localip

Kpopip hash  -a<MATCH> /etc/mail/popip

FEATURE(`accept_unresolvable_domains')dnl

MAILER(avpkeeper)dnl

MAILER(smtp)dnl

MAILER(local)dnl

 

MAILER_DEFINITIONS

Mcyrus,         P=[IPC], F=lsDFMnqA5@/:|SmXz, E=\r\n,

                S=EnvFromL, R=EnvToL/HdrToL, T=DNS/RFC822/X-Unix,

                A=FILE /var/imap/socket/lmtp

 

LOCAL_RULE_0

Rbb + $+ < @ $=w . >    $#cyrus $: + $1

 

LOCAL_RULESETS

# if there's a plus part, we want to directly deliver it

SLocal_localaddr

R$+ + $*        $#cyrus $@ $: $1 + $2

 

SLocal_check_rcpt

# Put the address into cannonical form (even if it doesn't resolve to an
MX).                                           
R$*                     $: $>Parse0 $>3 $1

R$* < $* > $*           $: $1 < $2 . > $3
Pretend it's canonical.                         
R$* < $* . . > $*       $1 < $2 . > $3
Remove extra dots.                              
 

# Allow relaying if the connected host is a local IP address.

R$*                     $: < $&{client_addr} >                  Get client
IP address.                                  
R<>                     $#OK                                    Local is ok.

R< $* . $- > $*         $(localip $1.$2 $: < $1 > . $2 $)       Check last
three octets.                                
R$* < MATCH >           $#OK

R< $- > $*              $: $(localip $1 $: < > $1 $2 $)         Check first
octet.                                      
R$* < MATCH >           $#OK

 

# Allow relaying if the connected host has recently POP3 authenticated.

R$*                     $: < $&{client_addr} >                  Get client
IP address.                                  
R< $* >                 $(popip $1 $)                           Check full
address.                                     
R$* < MATCH >           $#OK

 

# IP address didn't match.   





Anyone willing to help? :)



Sincerely,
Nick

Reply via email to