Defect #31957

ActionMailer need to limit how many maximum connections it opens

Added by strhuan blomquist almost 2 years ago. Updated almost 2 years ago.

Status:NewStart date:
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:Email notifications
Target version:-
Resolution: Affected version:4.0.2

Description

Microsoft office 365 smtp server has made some changes that will cause
this error message

Email delivery error: 432 4.3.2 STOREDRV.ClientSubmit; sender thread limit exceeded
basically

New throttling limit for concurrent connections that submit messages
The service has various limits to prevent abuse and to ensure fair use. An additional limit is being added. Under the new limit, up to three concurrent connections are allowed to send email messages at the same time. If an application tries to send more than three messages at the same time by using multiple connections, each connection will receive the following error message:

432 4.3.2 STOREDRV.ClientSubmit; sender thread limit exceeded

https://docs.microsoft.com/en-us/exchange/troubleshoot/send-emails/smtp-submission-improvements

other projects have worked around it by introducing a
maxConnections: 3 limitation to there mailers
ex

https://support.sisense.com/hc/en-us/community/posts/360029660673--Custom-SMTP-Email-Server-Solution-for-Outlook365-error-432-4-3-2-STOREDRV-ClientSubmit-sender-thread-limit-exceeded-

my setup

Environment:
Redmine version 4.0.2.stable
Ruby version 2.6.1-p33 (2019-01-30) [x86_64-linux]
Rails version 5.2.2
Environment production
Database adapter Mysql2
Mailer queue ActiveJob::QueueAdapters::AsyncAdapter
Mailer delivery smtp

History

#1 Updated by Go MAEDA almost 2 years ago

Could you try again after adding the following lines to config/additional_environment.rb?

config.active_job.queue_adapter =
  ActiveJob::QueueAdapters::AsyncAdapter.new \
    max_threads: 3

#2 Updated by strhuan blomquist almost 2 years ago

Thanks for the quick response.
so far this seems to have fixed it will keep track during the day.

#3 Updated by strhuan blomquist almost 2 years ago

The problem seems fixed so far. So there a way in the future to only make this affect the mailer. I guess this is now a global settings to any class that wants to use the ActiveJob::QueueAdapters::AsyncAdapter.

Also available in: Atom PDF