Hi Jesse,
>>> I opted to use multiple instances of pullnews to initially seed the spool. It
>>> crashed a lot and had difficulty with very large groups.
>>
>> Do you remember the errors you got?
>> They are maybe worthwhile fixing in pullnews.
>
> It could be related to the server on the other end (pulling from a commercial
> entity). The one situation that happened a lot, especially with large groups,
> was at some point in the session pullnews would just start spewing x's to the
> terminal in a loop and not stop until killed. It never gave me an error.
> Killing and resuming always seemed to work.
>
> It would be great if an option could be used to start a new
> connection should one be considered dead or unusable.
I've just had a look at a fix.
I suggest to re-use the "-t" parameter. It will then be the maximum
number of attempts to connect to a server or reconnect to a server if
the socket is unexpectedly closed.
I think it answers your needs. Do not hesitate to tell if it is not the
case. The fix will be present in the next release (INN 2.7.1).
Here is the new behaviour:
% ./pullnews -t2
Sat Jan 21 15:31:44 2023 start
Connecting to downstream host: localhost port: 119... done.
Legend: ``.'' is an article the downstream server refused
``*'' is an article the downstream server rejected
``+'' is an article the downstream server accepted
``x'' is an article the upstream server couldn't give out
``m'' is an article skipped due to headers (-a, -m or -P)
Connecting to upstream server news.trigofacile.com... done.
trigofacile.test:
Last checked: Sat Jan 21 15:23:25 2023
608 articles available (first 7, last 712)
Our current highest: 30 (at most 608 articles to get)
..
Article retrieval failed ([Net::NNTP] Connection closed)
Let's attempt again.
Connecting to upstream server news.trigofacile.com... done.
trigofacile.test:
Last checked: Sat Jan 21 15:32:00 2023
608 articles available (first 7, last 712)
Our current highest: 32 (at most 608 articles to get)
......xx
Article retrieval failed ([Net::NNTP] Connection closed)
Let's attempt again.
Connecting to upstream server news.trigofacile.com... done.
trigofacile.test:
Last checked: Sat Jan 21 15:33:13 2023
608 articles available (first 7, last 712)
Our current highest: 40 (at most 608 articles to get)
.
Article retrieval failed ([Net::NNTP] Connection closed)
Let's attempt again.
Connecting to upstream server news.trigofacile.com... done.
trigofacile.test:
Last checked: Sat Jan 21 15:33:30 2023
608 articles available (first 7, last 712)
Our current highest: 41 (at most 608 articles to get)
..
Article retrieval failed ([Net::NNTP] Connection closed)
Saving config
11 articles were offered to server on localhost
11 articles were refused
Upstream server
news.trigofacile.com:
trigofacile.test 11
Done Sat Jan 21 15:34:03 2023
And before, you had an infinite loop of "x" appearing in the output...
I've noted that pullnews does not currently support TLS connections.
I'll add an option for it for the downstream server, as it may be
useful. We can already configure a port for the downstream server (via
-p or -s).
As for upstream servers, pullnews.marks has the following syntax:
server [username password]
I would propose to extend it to:
server[:port][_TLS] [username password]
so as to ask for TLS, and also a different port. (Note that "server"
may also contain colons, if written as an IPv6 address.)
We would had:
news.server.com:563_TLS
news.server.com:433
Unless someone has a better idea to specify whether implicit TLS should
be used for a given upstream server?
--
Julien ÉLIE
« Perl programming is an *empirical* science. » (Larry Wall)