Eingehende E-Mails werden nicht mehr verarbeitet, im Log steht: Email kann nicht verarbeitet werden: Email::Receiver::EmptyEmailError

Plötzlich hat das System aufgehört, E-Mails zu verarbeiten. Im Log sehe ich folgenden Eintrag:

Message (7560 copies reported)

Email can not be processed: Email::Receiver::EmptyEmailError


Backtrace

/var/www/discourse/lib/email/processor.rb:183:in `log_email_process_failure'
/var/www/discourse/lib/email/processor.rb:29:in `rescue in process!'
/var/www/discourse/lib/email/processor.rb:16:in `process!'
/var/www/discourse/lib/email/processor.rb:13:in `process!'
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:29:in `process_popmail'
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:49:in `block (2 levels) in poll_pop3'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:669:in `each'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:669:in `each_mail'
/var/www/discourse/app/jobs/scheduled/poll_mailbox.rb:46:in `block in poll_pop3'
/var/www/discourse/vendor/bundle/ruby/3.2.0/gems/net-pop-0.1.2/lib/net/pop.rb:531:in `start'

Ich habe den Posteingang überprüft und kann keine verdächtigen E-Mails darin sehen…

Der Fehler wird nicht in der Liste der abgelehnten E-Mails angezeigt, tatsächlich wird dort überhaupt nichts mehr aufgelistet.

Alle E-Mails scheinen im Posteingang zu verbleiben, ohne verarbeitet zu werden.

Das ist mir einmal passiert, als ich E-Mails über POP abfragte und wegen eines riesigen Posteingangs in Timeouts geriet.

Löschen Sie empfangene Nachrichten?

Ich habe es nicht, aber es gibt nicht so viele E-Mails. Ungefähr 30.

Und ich brauche sie tatsächlich zur Bearbeitung…

Haben Sie versucht,

?

1 „Gefällt mir“

Ja, diese Einstellung war die ganze Zeit aktiviert.

Ich glaube, es gibt ein Problem mit dem E-Mail-Anbieter. Seltsame Dinge passieren…

Danke für deine Hilfe, wenn ich es herausfinde, lasse ich es dich wissen!

Wenn ich mich recht erinnere, habe ich den Code im laufenden Discourse so angepasst, dass leere E-Mails ignoriert werden.

Sie könnten versuchen, return if @mail.blank? vor Zeile 18 einzufügen.

Alternativ könnten Sie versuchen, den fehlerhaften Job aus Sidekiq zu entfernen.

(Ich würde vor solchen Experimenten ein Backup machen)

2 „Gefällt mir“

Und wenn das das Problem behebt, sollte dies nach Bug verschoben werden.

2 „Gefällt mir“

Warten Sie einfach. Es scheint, dass der Mailserver Probleme macht. Neben dem leeren Mail-Fehler erhalte ich auch ein Read-Timeout, das ich ursprünglich nicht mit dem E-Mail-Prozess in Verbindung gebracht habe, aber das ist der Fall.

Ich spreche gerade mit meinem Mail-Hoster, der bestätigt hat, dass auf seiner Seite etwas nicht stimmt.

Sobald ich mehr weiß, werde ich Sie informieren!

2 „Gefällt mir“

Ok, wir haben den Übeltäter gefunden. Es war eine einzelne E-Mail, sobald ich diese E-Mail in einen separaten Ordner verschoben habe, wurden die restlichen E-Mails korrekt verarbeitet.

Ein IMAP-Client kann diese E-Mail problemlos sehen. Ich würde den Rohinhalt dieser E-Mail (einschließlich Header und allem) in einer privaten Nachricht senden, wenn Sie möchten, damit Sie den Grund für das Hängenbleiben des Prozesses überprüfen und debuggen können.

1 „Gefällt mir“

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.

Gibt es eine Chance, dass du diese E-Mail noch herumliegen hast? Ich würde sie gerne (in einer PM) ansehen, wenn du sie hast :+1: