Re: Rotate and helpers

From: Robert Collins <robert.collins@dont-contact.us>
Date: 22 Aug 2001 18:33:34 +1000

On 22 Aug 2001 09:44:35 +0200, Henrik Nordstrom wrote:
> Robert Collins wrote:
>
> > logrotate restarts the helpers synchronously, so that their stderr is
> > the new cache.log file.
> >
> > Restarting the helpers synchronously kills all in-progress NTLM
> > authentication requests.
> >
> > NTLM *NEEDS* asynchronous helper restarts. How this is done is
> > irrelevant, it _must_ have it.
>
> The helper restarts are asyncronous. Buzy helpers stay around until they are done.
> What you are most likely missing is to tell the helper code that your NTLM helpers
> are buzy while pinned to a client. Currently it only looks if there is a
> outstanding request.

Traditional helpers restarts are only asyncronous in that the helpers
are not force-killed. They are allowed to finish replying to squid.
Whilst there is a potential log race there, you would have to be very
unlucky to strike it.

We use "stateful helpers" which are derived from the "stateless" (in
that each request is standalone) helper code. They have additional code
to allow pinning (actually they allow overlapped pinning or simple
pinning), per server queue's and calling-module state data.

So the NTLM helpers will stay around, and the pinn-ers can submit
further requests to the helpers.
You have pointed out a bug in the code though: I was only ignoring the
shutdown flag on submit, not on dispatch, leading to the 'killing'
problem. Thanks for that.

This still means that the requests completed after the rotate will get
logged to the wrong file though.

Rob

>
> --
> Henrik
>
Received on Wed Aug 22 2001 - 02:33:20 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:14:15 MST