Cronjob funtioniert nicht / nur zeitweise

Fragen und Tipps & Tricks zur PHP Mailinglisten-Verwaltung SuperMailingList

Moderator: mirko

Antworten
Benutzeravatar
mirko
Beiträge: 22869
Registriert: 25.11.2001, 15:14
Wohnort: Leipzig
Kontaktdaten:

Re: Cronjob funtioniert nicht / nur zeitweise

Beitrag von mirko »

Nein das hat nichts mit dem Empfängerpostfach zu tun, für den Versand ist das PHP auf dem eigenen Server zuständig, reicht der Speicher nicht, kann nichts versendet werden. Es können entsprechend auf dem Server nur kleine E-Mails versendet werden, weil das Speicherlimit für Scripte niedrig angesetzt ist. Es ist halt ein Webspace-Account, kann man nicht unendlich große E-Mails versenden.
Xel
Beiträge: 8
Registriert: 03.02.2014, 18:09

Re: Cronjob funtioniert nicht / nur zeitweise

Beitrag von Xel »

So, ich habe jetzt mal versucht, ne Email mit ähnlich großem Anhang zu verschicken.
Da passierte das gleiche.
Kann es sein, dass es zu einem Scriptabbruch führt, wenn bei einem Empänger das Emailpostfach fast voll ist, und die Email deshalb nicht zustellbar ist?
Benutzeravatar
mirko
Beiträge: 22869
Registriert: 25.11.2001, 15:14
Wohnort: Leipzig
Kontaktdaten:

Re: Cronjob funtioniert nicht / nur zeitweise

Beitrag von mirko »

Wie gesagt die Bounce-Funktion ist nur für reine Bounce-E-Mails, nicht für E-Mails mit Anhängen. In der Zeile 430 will er den Header vom Body in der E-Mail trennen und das klappt nicht, weil es zu viel Hauptspeicher benötigt.
Xel
Beiträge: 8
Registriert: 03.02.2014, 18:09

Re: Cronjob funtioniert nicht / nur zeitweise

Beitrag von Xel »

Was heißt, sofern die Email nicht defekt ist?

Hab das jetzt nämlich nochmal versucht.
Die Email die zum Script-Abbruch führt habe ich jetzt neu verfasst (mit dem gleichen Anhang).
Wenn ich diese Email abschicke, kann der Cronjob wieder nicht ausgeführt werden. Da kommt dann wieder folgendes:
CurrentCronJobScriptLevel: 5
Done.
CurrentCronJobScriptLevel: 6
Script timeout at level 6.
Check options of email retrieving or for email sending.
Script error at level 6.
Fatal PHP ERROR type=1; message=Allowed memory size of 33554432 bytes exhausted (tried to allocate 7676448 bytes); file=/var/www/web47/html/sml/PEAR/mimeDecode.php; line=430
Script error at level 6.
Fatal PHP ERROR type=1; message=Allowed memory size of 33554432 bytes exhausted (tried to allocate 7676448 bytes); file=/var/www/web47/html/sml/PEAR/mimeDecode.php; line=430
Script error at level 6.
Fatal PHP ERROR type=1; message=Allowed memory size of 33554432 bytes exhausted (tried to allocate 7676448 bytes); file=/var/www/web47/html/sml/PEAR/mimeDecode.php; line=430
Script error at level 6.
Fatal PHP ERROR type=1; message=Allowed memory size of 33554432 bytes exhausted (tried to allocate 7676448 bytes); file=/var/www/web47/html/sml/PEAR/mimeDecode.php; line=430
Script error at level 6.
Fatal PHP ERROR type=1; message=Allowed memory size of 33554432 bytes exhausted (tried to allocate 7676448 bytes); file=/var/www/web47/html/sml/PEAR/mimeDecode.php; line=430
Benutzeravatar
mirko
Beiträge: 22869
Registriert: 25.11.2001, 15:14
Wohnort: Leipzig
Kontaktdaten:

Re: Cronjob funtioniert nicht / nur zeitweise

Beitrag von mirko »

Bei dem Memory-Limit wohl mehr als 10 MB, insofern halt die E-Mail nicht defekt ist. Die Frage interessiert bei den Bounce-E-Mails nicht, die sind nur max. 100 KB groß, denn sind diese größer wird unnötig CPU verbraten. Der Abruf der Bounce-E-Mails ist sowieso zeitaufwändig, deswegen sollten keine normalen E-Mails in diesem Postfach liegen.
Xel
Beiträge: 8
Registriert: 03.02.2014, 18:09

Re: Cronjob funtioniert nicht / nur zeitweise

Beitrag von Xel »

Und wie groß darf eine Email dann maximal sein?
Benutzeravatar
mirko
Beiträge: 22869
Registriert: 25.11.2001, 15:14
Wohnort: Leipzig
Kontaktdaten:

Re: Cronjob funtioniert nicht / nur zeitweise

Beitrag von mirko »

Nein kann man nicht. Das Postfach darf nur reine Bounce-E-Mails enthalten, die sind keine 7 MB groß.
Xel
Beiträge: 8
Registriert: 03.02.2014, 18:09

Re: Cronjob funtioniert nicht / nur zeitweise

Beitrag von Xel »

Ok, das war die Lösung. War eine Email mit ~ 7MB dabei. Nachdem ich die gelöscht habe ging's.

Kann ich dem Problem irgendwie vorbeugen, dass der Cronjob nicht wieder automatisch beendet wird, falls wieder eine so große Email dabei ist?
Benutzeravatar
mirko
Beiträge: 22869
Registriert: 25.11.2001, 15:14
Wohnort: Leipzig
Kontaktdaten:

Re: Cronjob funtioniert nicht / nur zeitweise

Beitrag von mirko »

E-Mails aus dem Postfach löschen, die sehr groß sind oder es sind Spam-Mails mit ungültigen Aufbau, so dass er sich bei der Bounce-Prüfung aufhängt, d.h. immer mehr Speicher verwenden will bis das Limit erreicht ist.
Xel
Beiträge: 8
Registriert: 03.02.2014, 18:09

Cronjob funtioniert nicht / nur zeitweise

Beitrag von Xel »

Hallo.
Ich habe auf unserem Webspace SML installiert. Soweit sind auch alle die das Programm nutzen zufrieden.

Leider funktioniert der Cronjob nicht zuverlässig.
Beim ersten Mal funktionierte es ca. 2 Wochen. Nachdem ich ihn bei Alfahosting neu angelegt habe ging es ca. 3 Wochen.
Gestern nur 2 Mal und dann wieder nicht.
Der Support von Alfahosting hat mir folgendes geschrieben:
Cron-Job wurde deaktiviert nachdem er wiederholt mit der Meldung:
HTTP-Error in GET to http://.../sml/crons.php: HTTP/1.1 500 Internal Server Error
fehlgeschlagen ist.
Daraufhin habe ich versucht den Cronjob manuell auszuführen. Dabei erhalte ich aber folgende Meldung:
CurrentCronJobScriptLevel: 6
Script timeout at level 6.
Check options of email retrieving or for email sending.
Script error at level 6.
Fatal PHP ERROR type=1; message=Allowed memory size of 33554432 bytes exhausted (tried to allocate 7675379 bytes); file=/var/www/web47/html/sml/PEAR/mimeDecode.php; line=430
Script error at level 6.
Fatal PHP ERROR type=1; message=Allowed memory size of 33554432 bytes exhausted (tried to allocate 7675379 bytes); file=/var/www/web47/html/sml/PEAR/mimeDecode.php; line=430
Script error at level 6.
Fatal PHP ERROR type=1; message=Allowed memory size of 33554432 bytes exhausted (tried to allocate 7675379 bytes); file=/var/www/web47/html/sml/PEAR/mimeDecode.php; line=430
Was kann ich in diesem Fall tun, um mein Problem zu lösen?
Antworten