
Hello there,
I don't really know how to start this topic, I'm fairly new to Mailman and I don't speak anything but the most basic Python, but I am unsure whether the function "def chunkify(recips, chunksize):" which is defined in "Mailman/Handlers/SMTPDirect.py" might not have an adverse effect on mail delivery performance.
The problem is: At the moment, I'm looking at a specific setup without knowing anything about the "historical" development of "chunkify". There is a comment which mentions an initial suggestion made by Chuq Von Rospach and further improvements made by Barry Warsaw. Unfortunately, I was unable to find these original discussion, and frankly, without knowing why "chunkify" is implemented the way it is, I don't think I'm qualified to discuss my concern (which involves VERP delivery using a specific MTAs VERP implementation and a highly I/O saturated mail server) on this list.
What I found out from the archives is that "chunkfiy" has two purposes:
- Make sure that not more than mm_cfg.SMTP_MAX_RCPTS are passed to
the MTA in a single transaction. 2. To improve delivery performance by grouping destinations which will prevent messages which are addressed to dead/congested destinations blocking delivery of messages to working destinations.
Is this assumption of mine basically correct? If it is and if I didn't miss any important parts, I would like to point out a specific scenario in which the way "chunkify" is implemented and the way in which it is called based on delivery style (verp, bulk) and the setting of mm_cfg.SMTP_MAX_RCPTS might actually worsen overall mail delivery performance.
If I am totally wrong and "chunkfiy" serves a totally different purpose, please feel free to ignore this posting.
Cheers Stefan