Внезапно система перестала обрабатывать электронную почту. В логе я вижу следующую запись:
Сообщение (7560 копий сообщено)
Не удалось обработать электронное письмо: Email::Receiver::EmptyEmailError
Трассировка стека
/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'
Я проверил почтовый ящик и не вижу там никаких подозрительных писем…
Ошибка не отображается в списке отклонённых; фактически, туда больше ничего не добавляется.
Все письма, похоже, остаются в почтовом ящике без обработки.
thoka
(Thomas Kalka)
13.Март.2024 21:14:13
2
Это случалось со мной однажды при опросе почты через POP, когда из-за огромного почтового ящика возникали тайм-ауты.
Вы удаляете полученные сообщения?
Я ещё не успел, но писем не так много — около 30.
И мне нужно, чтобы они были обработаны…
Да, эта настройка была включена всё это время.
Я думаю, что у провайдера электронной почты что-то не так. Происходят странные вещи…
Спасибо за попытку помочь. Если я разберусь, я дам вам знать!
thoka
(Thomas Kalka)
13.Март.2024 21:38:01
7
Если я не ошибаюсь, я исправил код в работающем Discourse, чтобы игнорировать пустые письма.
Вы можете попробовать добавить return if @mail.blank? перед строкой 18.
Или же можно попробовать удалить неудачную задачу из Sidekiq.
(Перед такими экспериментами я бы сделал резервную копию)
pfaffman
(Jay Pfaffman)
13.Март.2024 22:13:50
8
И если это исправит проблему, то это следует перенести в bug .
Просто подождите. Похоже, почтовый сервер работает со сбоями. Помимо ошибки «пустая почта», я также получаю тайм-аут чтения, который изначально не связывал с процессом обработки электронной почты, но он связан.
Сейчас я общаюсь с моим хостинг-провайдером, который подтвердил, что, похоже, проблема на их стороне.
Как только я узнаю больше, я сообщу вам!
Отлично, мы нашли виновника. Это было одно письмо: как только я переместил его в отдельную папку, остальные письма начали обрабатываться корректно.
IMAP-клиент видит это письмо без проблем. Если хотите, я могу отправить вам сырое содержимое этого письма (включая заголовки и всё остальное) в личное сообщение, чтобы вы могли проверить и отладить причину зависания процесса.
Есть ли у вас ещё шанс, что это письмо у вас сохранилось? Если да, я бы с радостью взглянул на него (в ЛС)