Polling de email POP3 parou de funcionar

Tenho uma suspeita: Também alimentamos nosso Discourse com e-mails de listas de discussão. Se uma mensagem antiga retida para moderação for liberada pelo moderador da lista de discussão, ela pode ser considerada muito antiga pelo filtro do Discourse. Por causa do break, o loop será encerrado. Assim, uma única mensagem antiga pode interromper todo o processamento subsequente.

Ah, e devido à ordem deste servidor de e-mail POP, ele está indo do mais antigo para o mais recente.

Que tal esse patch, @gerhard? Também prefira Discourse.handle_job_exception sempre que possível para um relato adequado de quaisquer outros erros.

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

Obrigado pela explicação. Faz sentido.

@riking Concordo, uma correção adequada deve usar handle_job_exception. Sinta-se à vontade para criar um PR. :wink:

Isso deve corrigir o problema.