Ralf Hildebrandt: > Currently, smtp_fallback_relay is being used after the first failed > delivery. > > http://www.postfix.org/postconf.5.html#smtp_fallback_relay > explicitly mentions: "With bulk email deliveries, it can be beneficial > to run the fallback relay MTA on the same host, so that it can reuse > the sender IP address. This speeds up deliveries that are delayed by > IP-based reputation systems (greylist, etc.)." > > i thought this could be done easier, like: > > Why not have either a smtp_fallback_relay_threshold > parameter, which specifies after how many delivery attempts the mail > will be passed to the smtp_fallback_relay.
Problems: 1) There is no delivery attempt counter. That counter would have to be per-recipient. If this counter is larger than 1 byte, then it may span disk block boundaries, and it may become corrupted when the machine is shutdown without syncing the disk. Until now, message queue files have a strong guarantee against such corruption. 2) As mentioned by Viktor the queue manager defers mail for dead destinations without contacting the SMTP client. In those cases the smtp_fallback_relay feature has no effect. For your suggestion to work we would have to move fallback_relay logic from the SMTP client into the queue manager. That's a lot of complexity for little gain. > Alternative/additional approach: > > smtp_fallback_relay_threshold_time (compare to > smtp_pix_workaround_threshold_time) > > How long a message must be queued before the Postfix SMTP client > passes the mail to the smtp_fallback_relay. A threshold would work, with the default of 0 meaning that the threshold is disabled. My time is very limited, and this feature is simple enough that I will take a patch for this. Wietse