Проверка почты по POP3 перестала работать

У меня есть подозрение: мы также загружаем в Discourse письма из рассылки. Если старое сообщение, ожидающее модерации, будет выпущено модератором рассылки, фильтр Discourse может посчитать его слишком старым. Из-за break цикл будет прерван. Таким образом, одно старое сообщение может остановить всю дальнейшую обработку.

Кстати, из-за порядка работы этого POP-сервера электронной почты сообщения обрабатываются от старых к новым.

Как насчет этого патча, @gerhard? Также по возможности используйте Discourse.handle_job_exception для корректной отчетности об остальных ошибках.

-           break if mail_too_old?(mail_string)
+           next if mail_too_old?(mail_string)

Спасибо за объяснение. Это имеет смысл.

@riking Я согласен, правильное исправление должно использовать handle_job_exception. Не стесняйтесь создать PR. :wink:

Это должно исправить проблему.