Page 1 of 1

Amavis - DBD::mysql::st execute failed

Posted: Thu 30. Mar 2023, 13:36
by Ralph
Amavis legt mir zum 3. Mal den MySQL Server lahm, das Problem tritt auf wenn viele Mails auf einmal reinkommen z.b. dmarc Benachrichtigungen oder sonstige, das sind dann 20-30 Mails die reinkommmen.
Es ist jetzt kein direktes KH Problem, ich weiß das Amavis solche Probleme verusachen kann.
Ich habe bereits die max_connections auf 1000 gesetzt, das hat auch eine Zeit lang geklappt bis vorhin wieder:

Code: Select all

Mar 30 12:57:29 hostxx amavis[2270508]: (2270508-08) (!)lookup_sql: sql exec: err=1927, 70100, DBD::mysql::st execute failed: Connection was killed at (eval 96) line 173., , 
Mar 30 12:57:29 hostxx amavis[2270508]: (2270508-08) (!!)TROUBLE in process_request: sql exec: err=1927, 70100, DBD::mysql::st execute failed: Connection was killed at (eval 96) line 173. at (eval 98) line 333.
Mar 30 12:57:29 hostxx amavis[2270508]: (2270508-08) (!)Requesting process rundown after fatal error
Mar 30 12:59:20 hostxx amavis[2270509]: (2270509-10) (!)lookup_sql: sql exec: err=1927, 70100, DBD::mysql::st execute failed: Connection was killed at (eval 96) line 173., , 
Mar 30 12:59:20 hostxx amavis[2270509]: (2270509-10) (!!)TROUBLE in process_request: sql exec: err=1927, 70100, DBD::mysql::st execute failed: Connection was killed at (eval 96) line 173. at (eval 98) line 333.
Habe nun den wait_timeout erhöht, mal schauen wie es damit läuft:
https://www.danami.com/clients/knowledg ... age=german

Am liebsten möchte ich Amavis gar nicht mehr weiter verwenden, es macht mehr Probleme als es nützt ...
Hat jemand einen besseren Lösungsansatz dazu?

Re: Amavis - DBD::mysql::st execute failed

Posted: Thu 30. Mar 2023, 14:20
by xister
https://rspamd.com/

Alex plant es in einem der kommenden Releases zu implementieren.

Re: Amavis - DBD::mysql::st execute failed

Posted: Thu 30. Mar 2023, 14:44
by Ralph
xister wrote: Thu 30. Mar 2023, 14:20 https://rspamd.com/

Alex plant es in einem der kommenden Releases zu implementieren.
Top, das ist echt erfreulich!
Das Panel bzw. das ganze System wird dadurch sehr viel stabiler werden.

Re: Amavis - DBD::mysql::st execute failed

Posted: Thu 11. May 2023, 12:17
by Ralph
Gerade hat Amavis mal wieder einen Mysql Crash verursacht, gibt es irgendwelche Neuigkeiten wann Amavis durch Rspamd oder Milter ersetzt werden kann?

Re: Amavis - DBD::mysql::st execute failed  [GELÖST]

Posted: Thu 11. May 2023, 12:20
by Florian
Ist das vielleicht einfach nur ein Zu-wenig-RAM-Problem? Ich wüsste nicht, wie Amavis sonst den Datenbankserver killen sollte

Re: Amavis - DBD::mysql::st execute failed

Posted: Thu 11. May 2023, 12:42
by Ralph
Florian wrote: Thu 11. May 2023, 12:20 Ist das vielleicht einfach nur ein Zu-wenig-RAM-Problem? Ich wüsste nicht, wie Amavis sonst den Datenbankserver killen sollte
Hi Florian!
am RAM (16GB) liegt es nicht, auf diesem System läuft nur 1 Projekt wobei nur sehr wenig Resourcen verbraucht werden.
Wie oben beschrieben schmiert Amavis beim Eingang von vielem Emails auf einmal > 30 einfach ab und crasht dann den Mysql Server gleich mit.
Das Problem ist mir bekannt von anderen älteren Panels die damals Amavis im Einsatz hatten, also kein seltener Einzelfall.

Code: Select all

amavis[2270508]: (2270508-08) (!)lookup_sql: sql exec: err=1927, 70100, DBD::mysql::st execute failed

Re: Amavis - DBD::mysql::st execute failed

Posted: Thu 11. May 2023, 12:47
by Florian
Was sagt denn dmesg oder das Mysql Log? muss ja einen Grund haben warum der MySQL/MariaDB beendet wird.

Re: Amavis - DBD::mysql::st execute failed

Posted: Thu 11. May 2023, 13:00
by Ralph
Florian wrote: Thu 11. May 2023, 12:47 Was sagt denn dmesg oder das Mysql Log? muss ja einen Grund haben warum der MySQL/MariaDB beendet wird.
too many connections und der DBD::mysql::st Fehler
mysql max_connections hatte ich bereits auf 1000 erhöht, momentan sind die Abstürze weniger (1-2 mal pro Monat).
Das Problem wird durch die Funktionsweise von Amavis verursacht:
https://www.google.de/search?q=amavis+c ... sql+server

https://github.com/modoboa/modoboa/issues/2475

Re: Amavis - DBD::mysql::st execute failed

Posted: Thu 11. May 2023, 13:11
by Florian
Und auch schonmal die Amavis Prozesse erhöht, z.B auf 4

Re: Amavis - DBD::mysql::st execute failed

Posted: Thu 11. May 2023, 13:35
by Ralph
Florian wrote: Thu 11. May 2023, 13:11 Und auch schonmal die Amavis Prozesse erhöht, z.B auf 4
noch nicht, wo genau sind diese festgelgt?

Re: Amavis - DBD::mysql::st execute failed

Posted: Thu 11. May 2023, 15:00
by Florian
in Datei /etc/amavis/conf.d/50-user muss folgende Zeile hinzugefügt werden:


$max_servers = 4;

Wobei die Zahl für die Prozessanzahl steht.
Achtung, die Datei wird auch von Keyhelp geändert, daher ggf. eine eigene Konfigdatei anlegen.


in Datei /etc/postfix/master.cf muss folgende Zeile angepasst werden:


amavis unix - - - - 4 smtp

Logisch, dass hier die Zahl mit der in 50-user gleich sein muss.


Standard ist so:

amavis unix - - - - 2 smtp

Dienste natürlich danach neustarten.

Re: Amavis - DBD::mysql::st execute failed

Posted: Thu 11. May 2023, 15:26
by Ralph
Danke Florian, ich teste es mal mit deinen Settings..
Wenn nicht klappen sollte muss ich die eingehenden Mails drosseln ;-).
Florian wrote: Thu 11. May 2023, 15:00 in Datei /etc/amavis/conf.d/50-user muss folgende Zeile hinzugefügt werden:


$max_servers = 4;

Wobei die Zahl für die Prozessanzahl steht.
Achtung, die Datei wird auch von Keyhelp geändert, daher ggf. eine eigene Konfigdatei anlegen.


in Datei /etc/postfix/master.cf muss folgende Zeile angepasst werden:


amavis unix - - - - 4 smtp

Logisch, dass hier die Zahl mit der in 50-user gleich sein muss.


Standard ist so:

amavis unix - - - - 2 smtp

Dienste natürlich danach neustarten.

Re: Amavis - DBD::mysql::st execute failed

Posted: Thu 11. May 2023, 15:44
by Florian
Ja probiers aus. Versprechen kann ich nichts. Ich hatte aber Server, da hat das geholfen

Re: Amavis - DBD::mysql::st execute failed

Posted: Fri 12. May 2023, 15:05
by Ralph
hmm, ich denke gerade über Postscreen nach ...
das sollte doch eigentlich die Amavis Prozesse (load & connections) entlasten ... theoretisch
war das irgendwann einmal in KH integriert wg. dem inaktiven postscreen entry in der master.cf?

### edit ###
wie sieht es mit den php.ini aus, muß danach smtp_port = 587 gesetzt werden?
hatte postscreen bisher nie genutzt ...