Tengo una sospecha: también alimentamos nuestro Discourse con correos de listas de correo. Si un mensaje antiguo retenido para moderación es liberado por el moderador de la lista de correo, el filtro de Discourse podría considerarlo demasiado antiguo. Debido al break, el bucle se terminará. Por lo tanto, un solo mensaje antiguo podría detener todo el procesamiento posterior.
2 Me gusta
Ah, y debido al orden de este servidor de correo POP, va de lo más antiguo a lo más nuevo.
¿Qué te parece este parche @gerhard? Además, prefiere Discourse.handle_job_exception si es posible para el informe adecuado de cualquier otro error.
- break if mail_too_old?(mail_string)
+ next if mail_too_old?(mail_string)
2 Me gusta
Gracias por la explicación. Tiene sentido.
@riking Estoy de acuerdo, una solución adecuada debería usar handle_job_exception. Si quieres, puedes crear un PR. ![]()
1 me gusta
Esto debería solucionarlo.
5 Me gusta