In message <5437738e.70...@b1-systems.de>, Lothar Gesslein <gessl...@b1-systems.de> wrote:
>This is an OpenPGP/MIME signed message (RFC 4880 and 3156) >--S3jn7wKsBSncUVQTga7T8Np436be1Lonq >Content-Type: text/plain; charset=utf-8 >Content-Transfer-Encoding: quoted-printable > >On 10/09/2014 08:25 PM, Ronald F. Guilmette wrote: >> In any event, regardless of how this key sentence is construed, it >> self-evidently leaves open a rather obvious quetion: What happens, >> exactly, when the $max_use limit is exceeded? The document makes >> no effort at all to specify, leaving the reader to wonder why this >> limit was even mentioned at all. > >It is mentioned at that point only to make the reader understand that a >policy daemon will usually perform well, even if written in a "slow" >language with a relevant startup overhead. When there are say 10 >incoming mails per second you do NOT spawn 10 ruby-processes per second, >which would be a noticeable load, but reuse one process until $max_use >is reached. > >> I now ask the analogous question: What happens after $max_use ? >> It seems a reasonable question. The document does not provide an >> answer. > >The process is terminated, a new process will then be spawned on the >next connection. This is nothing particular to the policy delegation, >just the way the Postfix spawn(8) daemon works. And the suggested >configuration is to have your policy service run under the control of >spawn(8). Thank you. What you have written above does in fact clarify things a good deal more. Just to make sure that I'm crystal clear however, let me ask: When you say "terminated" what you are actually implying is just that the policy server process receives EOF on stdin, correct? And for the purpose of evaluating whether $max_use has been reached yet or not, a "use" of the policy server is defined as "use for a single SMTP connection/session", correct?[1] =-=-=-=-=-=-=-=- [1] I gather that if a policy server is invoked as part of the smtpd_helo_restrictions or smtpd_client_restrictions (when smtpd_delay_reject is *not* enabled) then in these cases the "use" of the server will involve only a single actual request/ response... since there is only a single TCP "connect" and only a single HELO/EHLO per SMTP session... whereas if the policy server is invoked as part of smtp_recipient_restrictions, then in this case the "use" of the server includes _all_ of the several request/response pairs that the Postfix will send to the policy daemon... one for each RPCT TO relating to the current message, correct?