DOVECOT: Keine eingehenden Mails mehr nach Upgrade auf 2.3.17_1

testit

Well-Known Member
Guten Tag!

Es gibt leider unter FreeBSD Dinge, die sich offenkundig nie ändern werden: Man macht ein Update/Upgrade von einem Paket - in diesem Fall von DOVECOT 2.3.16 auf die daraufhin erschienene 2.3.17(_1) - und schon handelt man sich Ärger ein:

Eingehende EMails werden nicht mehr gespeichert und trotz nicht veränderter Konfiguration eine abstruse Fehlermeldung im dovecot.log ausgegeben (vgl. unten). Das habe ich leider erst heute bemerkt, da das Ganze auf einer VM läuft, auf welche ich sukzessive bestimmte Applikationen installiere und teste, um zu einem gewünschten "Gesamtsystem" mit bestimmten Applikationen zu kommen. Ich bin nicht auf die Idee gekommen, mir jedes Mal wieder eine Mail zu schicken, um zu sehen, ob diese noch empfangen werden kann und habe neben dem Upgrade auf Dovecot 2.3.17_1 inzwischen auch zahlreiche anderen Änderungen vorgenommen. Bspw. habe ich MySQl durch MARIA DB abgelöst.

Mit anderen Worten: Setze ich die VM auf den Snapshot mit Dovecot 2.3.16, bei dem alles reibungslos läuft, führe ich den ganzen erbrachten Aufwand für die weiteren zuvor installierten Pakete sowie deren Anpassung ad absurdum, weil ich diese erneut installieren und anpassen müsste.

Mal abgesehen davon ist bei mir auch folgendes gesetzt, was von Dovecot 2.3.16 auch problemlos akzeptiert wird:

mail_location = maildir:/var/mail/vhosts/%d/%n
mail_home = /var/mail/vhosts/%d/%n


DOVECOT 2.3.17 wurde Ende OKTOBER, also vor ca. 6 Wochen released und der BUG ist wohl immer noch nicht gefixed.
Es ist mir schleierhaft, wie man bei solch einer bekannten Applikationen einen so langen Zeitraum zuwarten kann, um ein mit einer neuen Version aufgetretenes Problem zu lösen.

Kann mir bitte jemand erklären, wie ich am besten auf DOVECOT 2.3.16 downgrade?

Und wie kann ich bis auf weiteres bei künftigen Pakte-Updates DOVECOT 2.3.16 ausnehmen lassen?
EDIT: Gerade gefunden -> pkg lock

Danke und viele Grüße
testit


dovecot.log
Error: lmtp-server: conn unix:uid=125 [1]: rcpt name@domain.de: duplicate db: User name@domain.de doesn't have home dir set, disabling duplicate database
Dec 11 11:42:54 lmtp(name@domain.de)<80363><z7AxDf6ntWHrOQEAp6O1gg>: Panic: file imem.c: line 65 (i_strconcat): assertion failed:(str1 != NULL)

Das Problem wird in der Dovecot-Mailingliste bestätigt:
Problem confirmed. This is a 2.3.17 regression.
Tracking internally as DOP-2659
 
Zuletzt bearbeitet von einem Moderator:

testit

Well-Known Member
Netterweise kam ein Hinweis von Aki Tuomi (Lead Developer), dass das o. a. Problem mit einem in der kommenden Verison 2.3.18 enthaltenen FIX beseitigt sein wird und man jetzt schon folgenden Patch (GitHub) verwenden könnte.

Leider kenne ich mich mit Git nicht aus und frage mich, wie ich nun die gepatchte mail-duplicate.c von https://raw.githubusercontent.com/dovecot/core/master/src/lib-storage/mail-duplicate.c

in /usr/ports/mail/dovecot

einbeziehen kann, um mir anschließend die aktuelles Dovecot 2.17.1 mit o. a. Patch zu bauen?

Kann mir von Euch jd. bei dieser Fragestellung weiterhelfen?


Danke und Gruß
testit
 

testit

Well-Known Member
So, das ist eigentlich glatt durchgelaufen, aber leider lässt sich Dovecot nicht starten und steigt mit folgender Fehlermeldung aus:
....
===> Staging rc.d startup script(s)
===> Installing ldconfig configuration file

root@shell:/usr/ports/mail/dovecot # service dovecot start

dovecot does not exist in /etc/rc.d or the local startup
directories (/usr/local/etc/rc.d), or is not executable

Viele Grüße
testit

EDIT: Nach erneutem Portbau startet Dovecot +++ UND +++ der eingangs geschilderte BUG tritt nicht mehr auf!
 
Zuletzt bearbeitet:

medV2

Well-Known Member
Was aber auch noch gesagt werden sollte: Dovecot ist in den quaterly in Version 2.15 vorhanden, wenn man entgegen der Voreinstellung auf lately umstellt muss man halt auch damit rechnen, dass mal etwas broken ist.
 

testit

Well-Known Member
Was aber auch noch gesagt werden sollte: Dovecot ist in den quaterly in Version 2.15 vorhanden, wenn man entgegen der Voreinstellung auf lately umstellt muss man halt auch damit rechnen, dass mal etwas broken ist.
Ja, da hast Du recht!

Viele Grüße
testit
 
Zuletzt bearbeitet:

testit

Well-Known Member
Zuerst und mE auch wichtiger: Danke für den Hinweis, dass es Probleme gibt.

Auch wenn ich den Ärger verstehe, wenn etwas nicht funktioniert: Mit FreeBSD hat das wenig zu tun. ;)

Hallo,

ich habe nicht behauptet, dass es etwas mit FreeBSD zu tun hat, wenn man im Laufe der Jahre regelmäßig feststellen muss, dass ein Upgrade/Update plötzlich zu unerwarteten Side-Effects führt, die einem unverhofft Aufwand bescheren. :D

Mal im Ernst: Natürlich fand ich es nicht gerade prickelnd, an einem Adventssonntag plötzlich zu realisieren, dass in einem mit viel Aufwand realisierten "Zielsystem" mit diversen Komponenten wie Dovecot, Roundcube, rspamd mit NextCloud-Verzahnung plötzlich ausgerechnet der Mail-EMPFANG nicht mehr funktioniert.

Es hat durchaus seinen Grund, dass ich inzw. vieles über VMs mache und mit diesen auch größere Upgrades/Updates des Hostsystems vorab "simuliere".

Aber letztlich war das geschilderte Problem mit der freundlichen Unterstützung von Euch und Aki doch sehr schnell gelöst, was ebenfalls seit vielen Jahren eine FreeBSD-spezifische Erfahrung ist. ;)

Viele Grüße
testit
 

testit

Well-Known Member
Es gibt keinen Widerspruch!

Erfahrungen, die ich nach meiner subjektiven Wahrnehmung seit vielen bei dem Betriebssystem FreeBSD immer wieder mache und welche sich mutmaßlich "offenkundig nie ändern werden", habe nicht zwingend etwas mit dem Betriebssystem FreeBSD zu tun, sondern mit Menschen und organisatorischen Abläufen.

Und dass sich letztlich auftretende Problemstellungen in der Regel relativ schnell aufgrund der Gesinnung von Menschen, die mit FreeBSD arbeiten, lösen lassen, steht ebenfalls nicht im Widerspruch zu meiner eingangs formulierten Aussage.

Viele Grüße
testit
 

KobRheTilla

used register
Kleiner Tipp noch dazu: Um sicherzustellen, dass du die vorherige Version des Pakets zurückrollen kannst, einfach vorher ein pkg create ... machen und das Paket irgendwo hinsichern. Dann kannst du bei Problemen einfach wieder die vorherige Version installieren (pkg add <datei>).

Rob
 
Oben