Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

[Mailer] SMTP transport fails for long running processes  #36301

Copy link
Copy link
Closed
@tomme87

Description

@tomme87
Issue body actions

Symfony version(s) affected: 5.0.5+

Description
Happens if sending a email, and after 10 seconds (and before 100 seconds) a new email (on the same connection) is sent, then a TransportException is thrown:

Expected response code "250" but got code "451", with message "451 4.4.2 Timeout waiting for data from client.".

If sending another email an other TransportException is thrown:

Unable to write bytes on the wire.

This happens until I wait for 100 seconds.

How to reproduce
Use symfony/messenger, run message:consume and send a Email, wait for between 10 and 100 seconds then send a new Email.

I have only been able to reproduce this using Amazon SMTP server, but it might be others too.

Possible Solution
setting $pingThreshold in SmtpTransport to 10 seams to solve the issue.

Additional context

14:32:24 INFO      [messenger] Received message Symfony\Component\Mailer\Messenger\SendEmailMessage ["message" => Symfony\Component\Mailer\Messenger\SendEmailMessage^ { …},"class" => "Symfony\Component\Mailer\Messenger\SendEmailMessage"]                                                                                                                           
14:32:24 ERROR     [messenger] Error thrown while handling message Symfony\Component\Mailer\Messenger\SendEmailMessage. Sending for retry #1 using 1000 ms delay. Error: "Expected response code "250" but got code "451", with message "451 4.4.2 Timeout waiting for data from client."." ["message" => Symfony\Component\Mailer\Messenger\SendEmailMessage^ { …},"class" => "Symfony\Component\Mailer\Messenger\SendEmailMessage","retryCount" => 1,"delay" => 1000,"error" => "Expected response code "250" but got code "451", with message "451 4.4.2 Timeout waiting for data from client.".","exception" => Symfony\Component\Messenger\Exception\HandlerFailedException^ { …}]
14:32:24 INFO      [messenger] Received message Symfony\Component\Mailer\Messenger\SendEmailMessage ["message" => Symfony\Component\Mailer\Messenger\SendEmailMessage^ { …},"class" => "Symfony\Component\Mailer\Messenger\SendEmailMessage"]                                                                                                                           
14:32:24 ERROR     [messenger] Error thrown while handling message Symfony\Component\Mailer\Messenger\SendEmailMessage. Sending for retry #1 using 1000 ms delay. Error: "Unable to write bytes on the wire." ["message" => Symfony\Component\Mailer\Messenger\SendEmailMessage^ { …},"class" => "Symfony\Component\Mailer\Messenger\SendEmailMessage","retryCount" => 1,"delay" => 1000,"error" => "Unable to write bytes on the wire.","exception" => Symfony\Component\Messenger\Exception\HandlerFailedException^ { …}]

Looks like it happens after #35633 was introduced.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      Morty Proxy This is a proxified and sanitized view of the page, visit original site.