On Fri, 07 Oct 2011 15:54:34 -0600, Alex Rousskov <rousskov_at_measurement-factory.com> wrote:
> On 10/07/2011 03:20 PM, Dmitry Kurochkin wrote:
> > +bool
> > +CossSwapDir::unlinkdUseful() const
> > +{
> > + // UFS storage does not have files to erase/unlink
> > + return false;
> > +}
> > +
>
> This is about COSS, not UFS.
oops
> And since you would be changing this, I
> would also change the message to something more precise like
>
> // no entry-specific files to remove/unlink
>
> which can be used for Rock and COSS.
>
done
>
> > if (!configured_once) {
> > #if USE_UNLINKD
> > - unlinkdInit();
> > + if (unlinkdNeeded())
> > + unlinkdInit();
> > #endif
>
> Can the DiskIO strategy change during reconfigure? We may not support
> that today, but it feels wrong to exclude such possibility. If you
> agree, it would be best to move unlinkdInit() outside !configured_once
> protection and initialize it right after unlinkdNeeded() changed from
> false to true. No need to shut down unlinkd processes, I guess.
>
Good point! Though, moving outside of !configured_once is not enough,
since mainInitialize() runs only on startup. We need to call
unlinkdInit() in mainReconfigureFinish().
> During earlier reviews, I said that we should not start unlinkd on
> reconfigure because Squid may fork a large process. I was wrong -- we do
> not use fork() to start unlinkd. Your earlier code would have probably
> handled this better. Sorry.
>
We do fork() to start unlinkd, see ipcCreate(). IIRC we were discussing
starting unlinkd on the first unlink call, not during reconfigure.
Regards,
Dmitry
>
> Thank you,
>
> Alex.
This archive was generated by hypermail 2.2.0 : Sat Oct 08 2011 - 12:00:03 MDT