innduct - a replacement for innfeed/nntpsend, 0.1 alpha

Julien ÉLIE julien at trigofacile.com
Wed Aug 28 19:37:51 UTC 2013


Hi Ian,

First of all, my apologies for not having answered sooner.  I am aware 
your original message dates back to three years ago!  Better answering 
now than never, though.


> I've been running nntpsend for quite a while.  I wanted to run
> realtime feeds but I have a problem with innfeed from a reliability
> point of view[1].
>
> In particular, the program feed protocol spoken between innd and
> innfeed is lossy: if innfeed dies unexpectedly, articles which innd
> has written to the pipe to innfeed will be skipped.  innd has no way
> of telling which articles those are, no useful records, and no code to
> retry.  I can see no sensible way to solve this problem without using
> a different approach to getting articles from innd.

Couldn't you run innfeed in funnel-file mode instead of channel mode? 
This way, innd would continually write to a file that would continually 
be processed by innfeed.


> I looked at editing innfeed to make it tail the feed file with
> inotify/kqueue but innfeed is an very large program for what it does -
> nearly 25kloc.

Maybe the funnel-file mode I am speaking about is what you are hinting 
at here.  Instead of editing innfeed to tail the funnel-file on its own, 
a separate script doing that could be periodically run by crond.


> So I set out to write something similar but smaller and reliable.
> I think I've succeeded.  The resulting program is 4.5kloc, under a
> fifth of the size of innfeed.
>
> Since this is rather an alpha release, I'm not providing a tarball or
> (heaven forbid) binary packages or anything.  But you can get the
> source with:
>    git clone git://git.chiark.greenend.org.uk/~ian/innduct.git

Would you mind if we mention innduct in:
* the "Related Packages" section of README
     http://www.eyrie.org/~eagle/software/inn/docs/readme.html

* the innfeed man page (maybe in the "BUGS" section, as a workaround to 
the lossy behaviour you mention, or in a new "ALTERNATIVE" section)
     http://www.eyrie.org/~eagle/software/inn/docs/innfeed.html


Other INN-related pages you see on which it would be worth mentioning 
innduct? (maybe nntpsend and innxmit)


Is the URL
     http://www.chiark.greenend.org.uk/ucgi/~ian/git/innduct.git
OK for you to use, or do you prefer another one?  (tarball, HTML page 
describing the project or HTML version of the man page...)



Thanks again for your work, and sorry for only getting back to you now...

-- 
Julien ÉLIE

« Et puis, toi tu penses, moi je suis. » (Mot de passe)


More information about the inn-workers mailing list