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

Allgemeine Diskussionen rund um KeyHelp.
Post Reply
User avatar
Ralph
Posts: 786
Joined: Mon 30. Mar 2020, 16:14

Amavis - DBD::mysql::st execute failed

Post 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?
xister
Posts: 63
Joined: Thu 7. May 2020, 07:14

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

Post by xister »

https://rspamd.com/

Alex plant es in einem der kommenden Releases zu implementieren.
User avatar
Ralph
Posts: 786
Joined: Mon 30. Mar 2020, 16:14

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

Post 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.
User avatar
Ralph
Posts: 786
Joined: Mon 30. Mar 2020, 16:14

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

Post by Ralph »

Gerade hat Amavis mal wieder einen Mysql Crash verursacht, gibt es irgendwelche Neuigkeiten wann Amavis durch Rspamd oder Milter ersetzt werden kann?
User avatar
Florian
Keyweb AG
Posts: 1243
Joined: Wed 20. Jan 2016, 02:28

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

Post by Florian »

Ist das vielleicht einfach nur ein Zu-wenig-RAM-Problem? Ich wüsste nicht, wie Amavis sonst den Datenbankserver killen sollte
Mit freundlichen Grüßen / Best regards
Florian Cheno

**************************************************************
Keyweb AG - Die Hosting Marke
Neuwerkstr. 45/46, 99084 Erfurt / Germany
http://www.keyweb.de - http://www.keyhelp.de
**************************************************************
User avatar
Ralph
Posts: 786
Joined: Mon 30. Mar 2020, 16:14

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

Post 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
User avatar
Florian
Keyweb AG
Posts: 1243
Joined: Wed 20. Jan 2016, 02:28

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

Post by Florian »

Was sagt denn dmesg oder das Mysql Log? muss ja einen Grund haben warum der MySQL/MariaDB beendet wird.
Mit freundlichen Grüßen / Best regards
Florian Cheno

**************************************************************
Keyweb AG - Die Hosting Marke
Neuwerkstr. 45/46, 99084 Erfurt / Germany
http://www.keyweb.de - http://www.keyhelp.de
**************************************************************
User avatar
Ralph
Posts: 786
Joined: Mon 30. Mar 2020, 16:14

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

Post 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
User avatar
Florian
Keyweb AG
Posts: 1243
Joined: Wed 20. Jan 2016, 02:28

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

Post by Florian »

Und auch schonmal die Amavis Prozesse erhöht, z.B auf 4
Mit freundlichen Grüßen / Best regards
Florian Cheno

**************************************************************
Keyweb AG - Die Hosting Marke
Neuwerkstr. 45/46, 99084 Erfurt / Germany
http://www.keyweb.de - http://www.keyhelp.de
**************************************************************
User avatar
Ralph
Posts: 786
Joined: Mon 30. Mar 2020, 16:14

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

Post 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?
User avatar
Florian
Keyweb AG
Posts: 1243
Joined: Wed 20. Jan 2016, 02:28

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

Post 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.
Mit freundlichen Grüßen / Best regards
Florian Cheno

**************************************************************
Keyweb AG - Die Hosting Marke
Neuwerkstr. 45/46, 99084 Erfurt / Germany
http://www.keyweb.de - http://www.keyhelp.de
**************************************************************
User avatar
Ralph
Posts: 786
Joined: Mon 30. Mar 2020, 16:14

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

Post 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.
User avatar
Florian
Keyweb AG
Posts: 1243
Joined: Wed 20. Jan 2016, 02:28

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

Post by Florian »

Ja probiers aus. Versprechen kann ich nichts. Ich hatte aber Server, da hat das geholfen
Mit freundlichen Grüßen / Best regards
Florian Cheno

**************************************************************
Keyweb AG - Die Hosting Marke
Neuwerkstr. 45/46, 99084 Erfurt / Germany
http://www.keyweb.de - http://www.keyhelp.de
**************************************************************
User avatar
Ralph
Posts: 786
Joined: Mon 30. Mar 2020, 16:14

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

Post 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 ...
Post Reply