Zhou, Yan: > Hi there, > > I am using local transport to process messages from Postfix. When > message arrives, Postfix will call a script, passing in the message, > which we will process. > > If user sends a message with multiple recipients (in two different > domains) to Postfix, I noticed that Postfix will create two messages, > one for each domain. The number of separate messages Postfix creates is > equivalent to number of different domains.
Postfix scheduled the delivery by domain. This means that all the domains in mydestination deliver separately. One could call this a missed opportunity for optimization: Jan 10 17:11:34 hostname postfix/qmgr[1978]: 9A5F99247AD: from=<wie...@example>, size=376, nrcpt=2 (queue active) Jan 10 17:11:34 hostname postfix/local[10566]: 9A5F99247AD: to=<wie...@hostname.example>, orig_to=<wie...@hostname>, relay=local, delay=0.36, delays=0.27/0.06/0/0.03, dsn=2.0.0, status=sent (delivered to mailbox) Jan 10 17:11:36 hostname postfix/local[10567]: 9A5F99247AD: to=<wie...@localhost.example>, orig_to=<wie...@localhost>, relay=local, delay=1.5, delays=0.27/0.07/0/1.2, dsn=2.0.0, status=sent (delivered to mailbox) With delivery agents other than local(8) such optimization may not be safe because Postfix doesn't really know if the delivery is local (for example someone could override virtual_transport with something that delivers different domains via LMTP). Wietse