perl-filter: filter_mode invocations

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

Christoph Biedl <cbiedl at> 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 ' stop' does NOT result in an
> filter_mode invocation. In other words, 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 ( do a
> | ${PATHBIN}/ctlinnd throttle ' 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             <>

    Please send questions to the list rather than mailing me directly.
     <> explains why.

More information about the inn-workers mailing list