-
-
Notifications
You must be signed in to change notification settings - Fork 39
postfix: accept whole mail before passing it to filtermail #673
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Huh, |
|
As far as I understand |
|
This change is also a likely cause of this error from the logs that appeared after deploying it: Without this change messages should not even be written into temporary queue. Writing messages to disk before passing them to filtermail is another step that may fail and does not speed up sending. |
|
I opened an issue to track the problem this change is trying to solve: #675 |
| reflect some sort of communication path or dependency relationship | ||
| between components of the chatmail server. | ||
|
|
||
| ## Message between users on the same relay |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This documentation change is better moved in a separate PR, then it can also be merged quickly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I moved it to #678 :)
No, that was caused by restarting filtermail service. |
|
Let's close this for now :) we can look at it again if #676 isn't sufficient for solving filtermail's performance issues. |
| outcome = e.recipients[user2.addr] | ||
| assert outcome[0] == 450 | ||
| assert b"4.7.1: Too much mail from" in outcome[1] | ||
| assert e.smtp_code == 450 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Test fixes can also be moved to a separate PR?
This seems to fix issues with slow delivery on nine.testrun.org :)
The problem was that filtermail's aiosmtpd dependency had problems with postfix passing parts of the incoming SMTP commands onwards to it; this caused a lot of asyncio back-and-forth. Now filtermail only gets a complete mail it can check in one go. Moving filtermail from async-based to thread-based processing might also help, maybe in rust, but is a lot more effort.