[news.software.nntp] fix for nntp 1.5.10 / GNUS problem

huntting@csn.org (Brad Huntting) (11/21/90)

I recently upgraded to nntp 1.5.10 so I could use the LOADADV feature.

Unfortunately I was then swamped by emacs freaks (no offence intented)
complaining that their readers (GNUS and GNEWS) broke....   *Sigh*...

We have worked out a client side hack that fixes the problem, but the
hate mail is still pretty bad.

Does anyone know when/if this bug will be fixed, and/or if anyone has a
patch for it?


thanx,
brad

sob@tmc.edu (Stan Barber) (11/21/90)

The problems with CNEWS and GNUS will be fixed in the next release of
NNTP, which will most likely be called 1.5.11. The 1.6 release is also
in the works, but it not ready for release at Christmas as hoped.

I am looking for a few good beta testers. Please send mail to nntp@tmc.edu
if you are interested. GNUS sites and CNEWS sites especially are wanted.




-- 
Stan           internet: sob@bcm.tmc.edu         Director, Networking 
Olan           uucp: {rutgers,mailrus}!bcm!sob   and Systems Support
Barber         Opinions expressed are only mine. Baylor College of Medicine

cedman@golem.ps.uci.edu (Carl Edman) (11/21/90)

In article <1990Nov20.221152.10825@csn.org> huntting@csn.org (Brad Huntting) writes:
   I recently upgraded to nntp 1.5.10 so I could use the LOADADV feature.

   Unfortunately I was then swamped by emacs freaks (no offence intented)
   complaining that their readers (GNUS and GNEWS) broke....   *Sigh*...

   We have worked out a client side hack that fixes the problem, but the
   hate mail is still pretty bad.

   Does anyone know when/if this bug will be fixed, and/or if anyone has a
   patch for it?

Client side hack ? I can imagine: Set nntp-maximum-request to 1 and wait
several minutes for a small newsgroup to load. You deserve your hate
mail :-) !

About the hack to fix it. I usually post it once a week in
gnu.emacs.gnus (that is how often the problem comes up :-), but here
it is:

In article <9011091453.AA09160@mandrill.cv.nrao.edu> bglenden@MANDRILL.CV.NRAO.EDU (Brian Glendenning) writes:

   Yesterday GNUS stopped working - the symptom is that when I try to
   enter a newsgroup with more than 2 unread articles it just hangs
   forever. I am trying to find out what software the newshost has
   changed, I suspect nntp but I don't know yet.

   I vaguely recall people discussing something like this. Unfortunately
   I didn't pay enough attention, and now I can't read the old
   discussion. If this is a known problem could someone send me the fix.
   My recollection is that this involves a performance loss. True?

OK, this is about the 30th time people have mailed me or posted here and
asked for the solution. I hope the net excuses me for sending a short
summary of the solution (again).

There are many solutions and "solutions" to this problem, some of
them are quite primitive and make using GNUS almost unbearable,
others are so much work that nobody has yet troubled himself
to do it.

I understand the most popular solution is the "Disable-Timeout-Kludge".
It works like this:

1. Grep the header files of NNTP 1.5.10.
2. Find where TIMEOUT is defined
3. Comment it out
4. Recompile
5. Et voila: Everything works just fine
6. (If it doesn't check that you removed the "(setq nntp-maximum-request 1)" and
"(setq nntp-buggy-select t)" lines from your "~/.emacs" file, if you ever
had them there)

Negative consequence: There used to be a timeout for idle NNTP connections
of about 2 hours. This is gone.

I (in fact this university) can live(and post) with this just fine,
but your mileage may vary.

	Carl Edman


Theorectical Physicist,N.:A physicist whose  | Send mail
existence is postulated, to make the numbers |  to
balance but who is never actually observed   | cedman@golem.ps.uci.edu
in the laboratory.                           | edmanc@uciph0.ps.uci.edu

mberkley@sanjuan.uvic.ca (Mike Berkley - 721-8752) (11/22/90)

> On 21 Nov 90 03:21:57 GMT, cedman@golem.ps.uci.edu (Carl Edman) said:

CE> About the hack to fix it. I usually post it once a week in
CE> gnu.emacs.gnus (that is how often the problem comes up :-), but
CE> here it is:

CE> 2. Find where TIMEOUT is defined
CE> 3. Comment it out

CE> Negative consequence: There used to be a timeout for idle NNTP
CE> connections of about 2 hours. This is gone.  I (in fact this
CE> university) can live(and post) with this just fine, but your
CE> mileage may vary.

But this university cannot live with this fix - our administrator
(rightly) exhumed the buggy NNTP 1.5.10 after he found 86 nntpd's
running (no timeouts).

Vick Khera's fix is much more acceptable:

------------------------------------------------------------------------------
    *** /tmp/,RCSt1a13658	Mon Oct 29 14:16:52 1990
    --- serve.c	Fri Oct 26 11:44:52 1990
    ***************
    *** 126,131 ****
    --- 126,135 ----
      	(void) close(2);
      	(void) dup(0);
      	(void) dup(0);
    + 
    + #ifdef TIMEOUT
    + 	(void) setbuf(stdin, NULL);	/* Fix buggy select code */
    + #endif
  
  	/* If we're ALONE, then we've already opened syslog */
  
    =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
    Vick Khera     Gradual Student          Department of Computer Science
    ARPA:   khera@cs.duke.edu               Duke University
    UUCP:   ...!mcnc!duke!khera             Durham, NC 27706 (919) 660-6528
    -----------------------------------------------------------------------
------------------------------------------------------------------------------
Mike Berkley
mberkley@sanjuan@UVic.CA

cedman@golem.ps.uci.edu (Carl Edman) (11/23/90)

In article <MBERKLEY.90Nov21164110@sanjuan.uvic.ca> mberkley@sanjuan.uvic.ca (Mike Berkley - 721-8752) writes:
   > On 21 Nov 90 03:21:57 GMT, cedman@golem.ps.uci.edu (Carl Edman) said:

   CE> About the hack to fix it. I usually post it once a week in
   CE> gnu.emacs.gnus (that is how often the problem comes up :-), but
   CE> here it is:

   CE> 2. Find where TIMEOUT is defined
   CE> 3. Comment it out

   CE> Negative consequence: There used to be a timeout for idle NNTP
   CE> connections of about 2 hours. This is gone.  I (in fact this
   CE> university) can live(and post) with this just fine, but your
   CE> mileage may vary.

   But this university cannot live with this fix - our administrator
   (rightly) exhumed the buggy NNTP 1.5.10 after he found 86 nntpd's
   running (no timeouts).

   Vick Khera's fix is much more acceptable:
        [...]

Please ! Not again the same discussion we have every week on
gnu.emacs.gnus. The main point against this fix is that it impacts the
preformance of NNTP for the users. The consensus was that this
probably wasn't quite as bad as setting nntp-maximum-request to 1 in
gnus, but still significant.

There can also be made another point against this hack. There is a bug
in the NNTP software, which is at the core of the problem: The mixing
of high-level system-buffered I/O and low-level I/O, and that is simply
not a good thing. Removing buffering is simply another kludge to
disable the effects of this bug. Turning of the TIMEOUT removes at
least one instance of this "cross-programming" (If I may coin the term
:-). 

So, decide what tradeoffs you will make in your installation, but know
the advantages and disadvantages of all options.

        Carl Edman

Theorectical Physicist,N.:A physicist whose  | Send mail
existence is postulated, to make the numbers |  to
balance but who is never actually observed   | cedman@golem.ps.uci.edu
in the laboratory.                           | edmanc@uciph0.ps.uci.edu