Alexander 'Leo' Bergolth:
> On 09/24/2010 02:31 PM, Wietse Venema wrote:
> > Alexander 'Leo' Bergolth:
> >>> Have you already tried the "no RESET_OWNER_ATTR()" solution?
> >>
> >> I did a test run with the following aliases:
> >>
> >>     testlist: member1, member2, leo2
> >>     owner-testlist: root
> >>     member1: leo
> >>     member2: testleo
> >>     # leo2 is a real user
> >>
> >> It requeues the mail now. (Which is new.) There is one new queue-id for all
> >> the list-members and one local(8) process that delivers it:
> >>
> >> Sep 24 13:49:14 samba postfix/qmgr[3457]: 4096C2AEB8: from=<l...@xxx.com>, 
> >> size=2011, nrcpt=1 (queue active)
> >> Sep 24 13:49:14 samba postfix/qmgr[3457]: 46761398CB: 
> >> from=<owner-testl...@example.com>, size=2170, nrcpt=3 (queue active)
> >> Sep 24 13:49:14 samba postfix/local[3860]: 4096C2AEB8: 
> >> to=<testl...@example.com>, relay=local, delay=0.05, 
> >> delays=0.02/0.02/0/0.02, dsn=2.0.0, status=sent (forwarded as 46761398CB)
> >> Sep 24 13:49:14 samba postfix/qmgr[3457]: 4096C2AEB8: removed
> >> Sep 24 13:49:14 samba postfix/local[3860]: 46761398CB: 
> >> to=<l...@example.com>, relay=local, delay=0.02, delays=0.01/0/0/0, 
> >> dsn=2.0.0, status=sent (delivered to mailbox)
> >> Sep 24 13:49:14 samba postfix/local[3860]: 46761398CB: 
> >> to=<l...@example.com>, relay=local, delay=0.02, delays=0.01/0.01/0/0, 
> >> dsn=2.0.0, status=sent (delivered to mailbox)
> > 
> > This is expected behavior when
> > 
> > - The local(8) process limit is set to 1 in master.cf,
> > 
> > - The default_process_limit is set to 1 in main.cf,
> > 
> > - Local deliveries are forced to be multi-recipient transactions
> > (_destination_recipient_limit > 1).
> > 
> > None of the above is the recommended default.
> 
> Hmm - strange - all parameters are correctly set:
> 
> # grep ^local /etc/postfix/master.cf
> local     unix  -       n       n       -       -       local
> 
> # postconf default_process_limit \
>     local_destination_concurrency_limit \
>     local_destination_recipient_limit
> default_process_limit = 100
> local_destination_concurrency_limit = 2
> local_destination_recipient_limit = 1
> 
> > With the recommended default, the deliveries would be spread over
> > a small number of local(8) processes. Each process would deliver
> > one recipient per transaction, so that one recipient with an
> > expensive command in ~user/.forward would not slow down deliveries
> > for other users.
> 
> With my parameters and yor explanation, I'd expect delivery to be
> distributed over 2 concurrent local(8) processes by the queue manager,
> each process delivering only to one local recipient.
> 
> Did I get that right?

Insufficient information.

I don't know what changes you have been making in the course of
trouble shooting. For example you could have added another local
transport to master.cf with a different name, in which case the
_destination_recipient_limit would be the default of 50 recipients
per transaction.

Even then, a 1000 recipient list should be spread across two local(8)
processes, each delivering transactions of 50 recipients side by side.
I don't see that happen, so I suspect the measurement is inconclusive.

By the way, having 50 recipients per transaction would not be enough
to bust the dupfilter limit and trigger anomalies, but deliveries
would suffer from unnecessary delays when one recipient has a slow
command in their .forward file. With the intended configuration,
faster recipients complete before slower recipients, instead of
having to wait for the slower one.

        Wietse

Reply via email to