Cyr_expire Spiraling Out of Control - help!
Lee
lee at disinfo.com
Sat Nov 27 15:37:38 EST 2004
We recently upgraded to the latest cyrus/sasl. We were using 2.1, so we
need to convert the DBs over to skiplist and update cyrus.conf. We did
that and moved over without problem.
Two days after moving to 2.2, we discovered that all of a sudden mail
was being queued and not delivered on the box. The servers spit out
errors about deliver.db. To solve the problem i removed deliver.db and
everything in the db/* folder. After restarting cyrus, queued mail
quickly started dropping and started being delivered.
After this happened i believed it was the result of running squatter
for the first time (and subsequently failed). However today im looking
at the top process list and there are several cyr_expire process
running from each of last few days (since rebooting cyrus). They are
taking up 99% of the CPU and mkaing the load on the dual proc server
near 4.0.
Does anyone have any idea why cyr_expire is spiraling out of control
and overloading the system?
here's out cyrus.conf:
# standard standalone server implementation
START {
# do not delete this entry!
recover cmd="ctl_cyrusdb -r"
# this is only necessary if using idled for IMAP IDLE
# idled cmd="idled"
}
# UNIX sockets start with a slash and are put into /var/imap/sockets
SERVICES {
# add or remove based on preferences
imap cmd="imapd" listen="imap" prefork=5
imaps cmd="imapd -s" listen="imaps" prefork=2
# pop3 cmd="pop3d" listen="pop3" prefork=3
# pop3s cmd="pop3d -s" listen="pop3s" prefork=1
sieve cmd="timsieved" listen="sieve" prefork=1
# at least one LMTP is required for delivery
# lmtp cmd="lmtpd" listen="lmtp" prefork=0
# lmtpunix cmd="lmtpd" listen="/var/imap/socket/lmtp" prefork=1
lmtpunix cmd="lmtpd" listen="/export/cyrus/imap/socket/lmtp"
prefork=1
# lmtpunix cmd="lmtpd"
listen="/export/cyrus/postfix/spool/private/lmtp" prefork=1
# this is only necessary if using notifications
# notify cmd="notifyd" listen="/var/imap/socket/notify"
proto="udp" prefork=1
}
EVENTS {
# this is required
checkpoint cmd="ctl_cyrusdb -c" period=30
# this is only necessary if using duplicate delivery suppression
delprune cmd="cyr_expire -E 3" period=1440
# this is only necessary if caching TLS sessions
tlsprune cmd="tls_prune" period=1440
# delete old spam
purgetrash cmd="ipurge -d 21 -f user/%/spam" at=0530
purgetrash cmd="ipurge -d 1 -f user/%/spam-notcaught" at=0330
}
Sincerely,
Lee
---
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
More information about the Info-cyrus
mailing list