Gracefully handle SMTP user input errors (e.g. incorrect email addresses) to prevent Sidekiq retries
What does this MR do?
This MR gracefully handles SMTP input errors (e.g. incorrect or invalid e-mail addresses) to prevent these types of exceptions from causing Sidekiq to retry the task. If these specific exceptions occur, they will be logged, and the e-mail will be dropped from the queue.
Why was this MR needed?
If you include an author that has a misspelled e-mail address, Sidekiq will keep sending e-mail to all the recipients even if they have already received the e-mail. The only way to recover is to clear the Sidekiq queue.
Note that other exceptions can still be thrown (e.g. IOError
, Net::SMTPAuthenticationError
, Net::SMTPServerBusy
, Net::SMTPUnknownError
, and TimeoutError
). If the worker encounters these, Sidekiq should retry the task.
What are the relevant issue numbers?
Merge request reports
Activity
Reassigned to @dzaporozhets
@stanhu thank you
mentioned in commit c1b490d6