Loop infinito nell'invio di email di digest

Salve a tutti.

Il nostro server Discourse è entrato in un ciclo infinito inviando email senza sosta. Ecco l’output di shared/standalone/log/rails/production.log:

Delivered mail 7db8eecd-c36a-419c-ae34-0561b08bae25@community.xx.cc (1322.2ms)
  Rendered user_notifications/digest.text.erb (Duration: 50.1ms | Allocations: 12577)
  Rendering user_notifications/digest.html.erb within layouts/email_template
  Rendered user_notifications/digest.html.erb within layouts/email_template (Duration: 139.5ms | Allocations: 26910)
  Rendering user_notifications/digest.text.erb
  Rendered user_notifications/digest.text.erb (Duration: 71.7ms | Allocations: 13505)
Delivered mail 5bbf2e54-96a8-437d-a032-69f98a00f22a@community.xx.cc (1485.2ms)
  Rendering user_notifications/digest.html.erb within layouts/email_template
  Rendered user_notifications/digest.html.erb within layouts/email_template (Duration: 70.9ms | Allocations: 20613)
  Rendering user_notifications/digest.text.erb
  Rendered user_notifications/digest.text.erb (Duration: 38.2ms | Allocations: 11390)

Questo è iniziato all’improvviso (probabilmente quando è partito il cron dei digest:

)

Ora un core è completamente occupato nell’invio delle email dei digest.

  • Il rebuild dell’app non ha aiutato;

  • Aggiornato all’ultima versione: nessun cambiamento;

  • Attivato “Disabilita email di riepilogo per tutti gli utenti” e fatto un rebuild dell’app: nessun cambiamento;

    #### Installed
    
    ### 2.4.0.beta5
    

Cosa altro posso fare? Come posso fermare questo problema?
Grazie in anticipo.

1 Mi Piace

Potrei sbagliarmi, ma penso che quello che è successo sia che le e-mail di riepilogo siano state messe in coda e ora vengono inviate. Continueranno a essere inviate finché non saranno tutte recapitate.

Se ho ragione, puoi disattivare le e-mail, trovare la tabella che le contiene ed eliminarle. Tuttavia, il problema si ripresenterà la prossima volta che verranno inviate le e-mail di riepilogo.

1 Mi Piace

Sì, ma questo succede già da 3 giorni. Tutte le altre email (ad esempio quelle di registrazione) non vengono più inviate. La community funziona, ma l’invio di tutte le email no.
Ho trovato un problema molto simile: Extreme memory usage due to bad mail credentials. Quindi sembra che si tratti di un bug piuttosto insidioso.

L’unico modo che ho trovato per fermare questo problema è stato rimuovere il token di autenticazione dal mio provider SMTP. Discourse ha iniziato a mostrare centinaia di errori e solo dopo di ciò il carico è diminuito. Ho ripristinato il token e ora sembra che tutto sia a posto.

1 Mi Piace

Le tue credenziali di posta elettronica erano errate?

@codinghorror Ho individuato la causa principale del problema. Il nostro provider di posta ha rimosso (per loro stupide ragioni) i record di host verificati per il nostro account. I record di host venivano utilizzati per fornire il campo from nell’email con il nostro host. Quindi, dopo che lo hanno fatto, Discourse è entrato in un ciclo infinito. Penso che il flusso di Discourse abbia anche un bug per questo caso. Perché dovrebbe segnalare l’errore e smettere di caricare un core al 100%.

Quindi l’account è corretto. Ma il provider di posta restituisce un errore durante l’invio della posta “Host di invio errato” o qualcosa di simile e questo flusso causa il problema.

2 Mi Piace

Concordo, questa è una situazione negativa e dovremmo gestirla meglio.

1 Mi Piace

È tutto tornato alla normalità?

Sì. Dopo aver modificato le credenziali della posta.

1 Mi Piace