chiark / gitweb /
17b73adf8fd81e44a0d047315f2706f876732cd4
[innduct.git] / RATIONALE
1 Why not innfeed ?
2
3 Two reasons:
4
5 1. innfeed is not reliable[1].  In particular, the program feed
6    protocol spoken between innd and innfeed is lossy: if innfeed dies
7    unexpectedly, articles which innd has written to the pipe to
8    innfeed will be skipped.  innd has no way of telling which articles
9    those are, no useful records, and no code to retry.  I can see no
10    sensible way to solve this problem without using a different
11    approach to getting articles from innd.
12
13  [1] By "reliable" I mean that articles will be propagated unless
14      either (a) there is some deliberate policy or technical reason
15      why they are not or (b) transient problems prevent the
16      propagation from succeeding before the article expires.
17
18 2. Why not just edit innfeed ?  Well, innfeed is an very large program
19    for what it does - nearly 25kloc.
20
21 So I set out to write something similar but smaller and reliable.