perl-filter: filter_mode invocations

Russ Allbery rra at stanford.edu
Sun Dec 11 21:10:54 UTC 2005


Christoph Biedl <cbiedl at gmx.de> writes:

> As I read in that document: "Then, if the news administrator follows the
> strongly recommended shutdown procedure of throttling the server before
> shutting it down, the filter state will be safely saved to disk and can
> be reloaded when innd restarts". So I added a short statement to
> filter_mode:

> |    slog ('N', 'filter_mode: (Mode, NewMode, reason) = ' .
> |        "($mode{Mode}, $mode{NewMode}, $mode{reason})");
> [ Yeah, slog is cleanfeed, lesson learned ]

> to see when and how filter_mode is called.

> Big surprise: Shutdown using 'rc.news stop' does NOT result in an
> filter_mode invocation. In other words, rc.news itself does not follow
> the recommended shutdown procedure, the memory info is lost. Upon
> restart, cleanfeed might reload an empdump from past times when an
> explicit throttle was done.

> Workaround: Before shutting down (rc.news:40) do a
> | ${PATHBIN}/ctlinnd throttle 'rc.news stop'

Done in STABLE.

> Solution: "shutdown" should do a throttle - or, instead of simply
> disabling the perl filter, call filter_mode a last time with appropriate
> parameters. Same for "xexec".

The latter has now been done in CURRENT.

-- 
Russ Allbery (rra at stanford.edu)             <http://www.eyrie.org/~eagle/>

    Please send questions to the list rather than mailing me directly.
     <http://www.eyrie.org/~eagle/faqs/questions.html> explains why.


More information about the inn-workers mailing list