Auslieferung postfix an cyrus hängt

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
bükkes
Posts: 23
Joined: 2003-05-20 00:04
Location: Aachen

Auslieferung postfix an cyrus hängt

Post by bükkes » 2003-12-17 14:37

Hallo zusammen,

In häufigen Abständen bleibt die Auslieferung der Queue von postfix an cyrus (via lmtp) hängen.

Auf dem SuSE 8.2-Rechner kommen folgende Pakete zum Einsatz:
cyrus-sasl2-2.1.12-31, cyrus-imapd-2.1.12-34, db-4.0.14-249, postfix-2.0.6-14

Einige relevante Konfigurationszeilen lauten wie folgt:

/etc/postfix/main.cf
[/code]
...
mailbox_command = /usr/lib/cyrus/bin/deliver
mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
...
[/code]

/etc/imapd.conf (komplett)

Code: Select all

configdirectory: /var/lib/imap
partition-default: /var/spool/imap

admins: cyrus root
allowanonymouslogin: no
autocreatequota: 100000
reject8bit: no
quotawarn: 90
timeout: 480

sasl_pwcheck_method: saslauthd 
sasl_mech_list: PLAIN

saslauth_method: shadow

virtdomains: 1
/etc/cyrus.conf (komplett)

Code: Select all

START {
  recover       cmd="ctl_cyrusdb -r"
}

SERVICES {
  imap          cmd="imapd" listen="imap" prefork=0
  pop3          cmd="pop3d" listen="pop3" prefork=0
  sieve         cmd="timsieved" listen="sieve" prefork=0
  lmtpunix      cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=0
}

EVENTS {
  checkpoint    cmd="ctl_cyrusdb -c" period=30
  delprune      cmd="ctl_deliver -E 3" period=1440
  tlsprune      cmd="tls_prune" period=1440
}

Bis vor kurzem haben wir im Rahmen des nächtlichen Backups zunächst cyrus gestoppt, das Backup ausgeführt und anschließend cyrus neu gestartet. Dabei entstand (immer) folgender Eintrag in /var/log/warn

Code: Select all

Dec 14 02:00:11 mail master[12279]: setrlimit: Unable to set file descriptors limit to -1: Operation not permitted
Dec 14 02:00:11 mail master[12279]: retrying with 1024 (current max)
Dec 14 02:00:49 mail ctl_deliver[12818]: DBERROR db4: 4 lockers
Und 'manchmal' folgte darauf dieses:

Code: Select all

Dec 16 09:01:15 mail postfix/local[25115]: warning: timeout on private/lmtp socket while reading input attribute name
Dec 16 09:01:15 mail postfix/local[25115]: warning: private/lmtp socket: malformed response
...
Dec 16 13:04:35 mail postfix/qmgr[12099]: B3FDBA8023: skipped, still being delivered
Mails laufen dann in der Queue auf, lediglich ein Neustart (mit einigen Sekunden Pause) von postfix und cyrus, gefolgt von postqueue -f, bringt Abhilfe.

Laut Aussage der Cyrus-Mailingliste handelt es sich bei der Angabe zu den '4 lockers' lediglich um ein kosmetisches Problem. Hat dazu jemand Erfahrungswerte?

Nach testweiser Deaktivierung des nächtlichen Cyrus-Neustarts wurden heute nach 36 Stunden Laufzeit '5 lockers' ausgegeben und jegliche Auslieferung sofort eingestellt.

Auch die Umstellung auf Auslieferung über deliver hat keine Abhilfe gebracht. An der Systemleistung kann es eigentlich nicht liegen, der Rechner dient nur dem Mailverkehr und verwaltet weniger als 5 Imap-User.

Hat jemand von Euch Ideen?
Könnt Ihr einen alternativen IMAP-Dämon empfehlen?

Danke,
Thorsten

squize
Userprojekt
Userprojekt
Posts: 741
Joined: 2003-05-19 16:46
Location: Karlsruhe

Re: Auslieferung postfix an cyrus hängt

Post by squize » 2003-12-17 19:44

Die Alternative ist Courier Imap. Ich habe Cyrus und Courier am laufen und von der Konfiguration finde ich persönlich Courier um einiges einfacher, obwohl ich auch sagen muss, dass ich mit Cyrus sehr zufrieden bin.

Gruss

Marc

jlinker
Posts: 248
Joined: 2002-07-08 20:07

Re: Auslieferung postfix an cyrus hängt

Post by jlinker » 2003-12-18 17:12

Also die LOCKERS kannst Du ignorieren.

Ich habe in meiner main.cf lediglich:
mailbox_transport = cyrus

Und in der master.cf
cyrus unix - n n - - pipe
flags=R user=cyrus argv=/usr/local/imapd/bin/deliver -e -r ${sender} -m ${extension} ${user}


Laufen denn die IMAP Prozesse alle?

bükkes
Posts: 23
Joined: 2003-05-20 00:04
Location: Aachen

Re: Auslieferung postfix an cyrus hängt

Post by bükkes » 2003-12-19 12:13

Transport über deliver hatten wir testweise auch schon laufen.
Dieser führte aber oftmals zu enorm hohen Auslieferungszeiten (im zweistelligen Minutenbereich), die dann ein Timeout hervorriefen.

Werde dies jedoch trotzdem nochmal versuchen, danke für den Tipp.

bükkes
Posts: 23
Joined: 2003-05-20 00:04
Location: Aachen

Re: Auslieferung postfix an cyrus hängt

Post by bükkes » 2004-08-30 17:07

Das Problem trat in den folgenden Monaten noch mehrfach auf, offensichtlich war die Struktur der Cyrus-Datenbank nicht ganz ok.

Nach Sicherung, Löschen und Neuinstallation des RPM haben wir die User-Mailboxen über den cyradm angelegt und den ursprünglichen Inhalt wieder hergestellt. Seitdem läuft das System seit einem halben Jahr tadellos. :)