Marek Kozlowski: > >>>> Why in this case: > >>>> > >>>> `sth1': someone1 -> someone1,someone2 > >>>> `sth2': someone2 -> someone3 > >>>> > >>>> someone3 receives the mail in two copies?? > >>>> (someone1 receives it once) > >>> > >>> Set "enable_original_recipient = no" if you don't want that, and > >>> see http://www.postfix.org/postconf.5.html#enable_original_recipient > >>> for why this rain damage exists. > >> > >> No, it has nothing to do. With both settings it works the same. > >> > >> Moreover: > >> > >> `sth1': someone1 -> someone1,someone2 > >> `sth2': someone2 -> someone2,someone3 > >> > >> `someone1' receives one copy, `someone2' - two... and `someone3' - > >> three... > > > > You forgot to 'postfix reload' > > Absolutely not.
With Postfix >= 2.2 and "enable_original_recipient = no", the cleanup daemon deduplicates recipients OF THE SAME MESSAGE INSTANCE regardless of whether the recipients are 'original' to the request, whether the recipients are derived through virtual_alias_maps or canonical_maps, or whether the recipients are added with always_bcc, sender_bcc_maps or recipient_bcc_maps. This is easy to verify by examining cleanup_out_recipient.c, which is the only function that appends recipients to a queue file. If that function doesn't deduplicate, then someone has 'improved' the cleanup_out_recipient.c code, for which I take no responsibility. I won't answer to follow-up unless they are concrete enough (includinbg Postfix build information) that they can be verified independently. Wietse