After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 110790 - socket error messages from idle disconnected sockets
socket error messages from idle disconnected sockets
Status: VERIFIED INCOMPLETE
Product: Pan
Classification: Other
Component: general
pre-0.14.0 betas
Other Linux
: Normal normal
: 0.14.0
Assigned To: Charles Kerr
Pan QA Team
: 109359 110672 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2003-04-14 21:31 UTC by Brian Morrison
Modified: 2009-08-15 18:40 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Brian Morrison 2003-04-14 21:31:01 UTC
I've simply upgraded to 0.13.94 from 0.13.93.

If I retrieve new articles and then start Pan, I see no new articles in any
subscribed group. Selecting retrieve new articles does nothing apparent.

Selecting the groups then causes the total count to increase, but unread
remains at zero for each group.

Turning off the read article filter shows the new articles are present but
marked read.

The server article numbering is unchanged so I don't know what is happening
exactly, please ask for a run log if required.
Comment 1 Brian Morrison 2003-04-14 22:01:29 UTC
Right, here is an excerpt of a run log of what Pan is doing when I try
to retrieve new articles. I've found that going back to 0.13.93 does
not help either, it used to work!

Mon, 14 Apr 2003 22:49:45 - MODE READER check failed: 503 Timeout
after 10 seconds, closing connection.
Mon, 14 Apr 2003 22:49:45 - Disconnecting one connection from `Ickx'
after 60 seconds idle
Mon, 14 Apr 2003 22:49:45 - GLib -
giounix.c:395:g_io_unix_get_flags()Error while getting flags for FD:
Bad file descriptor (9)
Mon, 14 Apr 2003 22:49:45 - GLib - Invalid file descriptor.
Mon, 14 Apr 2003 22:49:45 - GLib - Invalid file descriptor.
Mon, 14 Apr 2003 22:49:45 - GLib - Error flushing string: Bad file
descriptor
Mon, 14 Apr 2003 22:49:45 - News server connection count: 3

Looks like something fails in the mode reader command attempt and then
that socket is gone. Every time I try to get new articles the error
symbol appears at bottom right.
Comment 2 Christophe Lambin 2003-04-14 22:18:04 UTC
Looks like your newsserver isn't responsing to the MODE READER 
command.  Could you attach the output of the following trace:

pan --debug-sockets > logfile

Attach it to this bugreport: 
http://bugzilla.gnome.org/createattachment.cgi?id=110790

A simple test of your newsserver may also shed some light:

$ telnet localhost nntp
MODE READER
^D


Comment 3 Charles Kerr 2003-04-14 22:46:21 UTC
> Mon, 14 Apr 2003 22:49:45 - MODE READER check failed:
> 503 Timeout after 10 seconds, closing connection.

You've got your INN server set to timeout after just 10 seconds!
Pan only sends keepalive messages to idle connections every 60
seconds.  Since the keepalive message is, in fact, "mode reader"
(because it only has a one-line transmit and a one-line reply,
it's a good low-bandwidth keepalive) probably what's happened here
is that your INN server has hung up on you, and then Pan came along
and tried to send a keepalive and read the 503 message.

> Mon, 14 Apr 2003 22:49:45 - Disconnecting one connection from
> `Ickx' after 60 seconds idle
> Mon, 14 Apr 2003 22:49:45 - GLib giounix.c:395:g_io_unix_get_flags()
> Error while getting flags for FD: Bad file descriptor (9)
> Mon, 14 Apr 2003 22:49:45 - GLib - Invalid file descriptor.
> Mon, 14 Apr 2003 22:49:45 - GLib - Invalid file descriptor.
> Mon, 14 Apr 2003 22:49:45 - GLib - Error flushing string:
  Bad file descriptor

I haven't checked the gio code for this, but I suspect
it's that Pan is trying to write to a closed socket because
the news server has hung up on us.

Brian, could you open up your INN server for awhile so that
Chris and I can connect to it and test Pan on it a bit?

Comment 4 Charles Kerr 2003-04-14 22:48:02 UTC
*** Bug 109359 has been marked as a duplicate of this bug. ***
Comment 5 Charles Kerr 2003-04-14 22:48:19 UTC
*** Bug 110672 has been marked as a duplicate of this bug. ***
Comment 6 Charles Kerr 2003-04-14 23:55:58 UTC
--- shadow/110790       Mon Apr 14 18:46:24 2003
+++ shadow/110790.tmp.16839     Mon Apr 14 18:48:03 2003
@@ -96,6 +96,9 @@        
 the news server has hung up on us.

 Brian, could you open up your INN server for awhile so that
 Chris and I can connect to it and test Pan on it a bit?                 



This is going to be tricky, my server is playing up on me this evening
too, I've had to rebuild some of my hardware today because of an
overheating processor. At present I can't get new articles into the
database, might be cos the filesystem got a bit upset this morning. No
time to fix it now.

The server is an out of the box INN 2.3.2 as comes with RedHat 7.3, and
I am online very little so it will be nearly impossible to sort out
connections for you. Sorry and all that!   

I might be able to lengthen the timeout though, not sure where to do
that but inn.conf would be a likely spot. Hmm, can't see anything
obvious there......

--

Brian Morrison

bdm at fenrir dot org dot uk                  
Comment 7 Brian Morrison 2003-04-15 07:55:10 UTC
OK gents, I have now sorted this one out, it turned out to be that INN
was refusing new artciles because my machine upset (write 100 lines of
"I must not allow my processor heatsink to be clogged with dust") had
corrupted the newsbase. This is now fixed and Pan can see new articles
again.

Sorry for the bum steer.....
Comment 8 Charles Kerr 2003-04-15 19:38:24 UTC
From Brian in mail:

Just to add to this for your information and assistance.

INN has a client timeout of 1800 seconds in my case, however this is
only true once a further command has been sent after the mode reader
command. In that intervening period their is a 10 second timeout that
appears to be hard coded, or at least difficult to change. I've checked
and once the group command has been sent I can leave a telnet session
sitting for ages without being timed out. You have to be quick with the
typing though.

When I see Pan fall over it appears to be because the group command is
sent too long after the mode reader command and hence Pan sees a 503
timeout error. It then appears to recover and do the right thing in
most cases. What I can't work out is why this happens, I wonder if
somehow things get mixed up between the different connections, or is
this a feature of gnet?

Hope this comment is of use....
Comment 9 Charles Kerr 2003-04-15 19:42:18 UTC
Brian's comments made me realize what was going on,
the gio error messages are because Pan is making extra
unnecessary connections -- like when you start up Pan and
read a single article, and see that you have two connections.
The second connection never does anything except log in, so
if it doesn't get used in 10 seconds then it will get the
kinds of errors that Brian described.

I've checked in code to limit the number of pending
connections per server to one -- after the connection
is made, a task can request a new connection, so startup
for the first four-connection task may take a few beats
longer, but it should keep down unwanted extra
connections.

http://cvs.gnome.org/bonsai/cvsview2.cgi?root=/cvs/gnome&subdir=pan/pan&files=queue.c&command=DIRECTORY
http://cvs.gnome.org/bonsai/cvsview2.cgi?root=/cvs/gnome&subdir=pan/pan&files=socket-pool.c&command=DIRECTORY
http://cvs.gnome.org/bonsai/cvsview2.cgi?root=/cvs/gnome&subdir=pan/pan&files=socket-pool.h&command=DIRECTORY
http://cvs.gnome.org/bonsai/cvsview2.cgi?root=/cvs/gnome&subdir=pan&files=ANNOUNCE.html&command=DIRECTORY
Comment 10 Brian Morrison 2003-04-22 19:14:41 UTC
I've been trying out 0.13.95 Charles, I am still seeing errors
appearing of the same type, usually when selecting an article in a new
group.

Errors look like this:

Tue, 22 Apr 2003 20:09:29 - Saved 1454 articles in "uk.radio.amateur"
in 0.2 seconds (9058 art/sec)
Tue, 22 Apr 2003 20:09:29 - Scored 93 entries in 0.0 seconds (93000
articles/sec)
Tue, 22 Apr 2003 20:09:32 - Loaded 604 articles for group
"alt.satellite.gps" in 0.0 seconds (49794 art/sec)
Tue, 22 Apr 2003 20:09:32 - Scored 604 entries in 0.0 seconds (604000
articles/sec)
Tue, 22 Apr 2003 20:10:12 - Unable to set group "alt.satellite.gps":
503 Timeout after 10 seconds, closing connection.
Tue, 22 Apr 2003 20:11:41 - MODE READER check failed: Error reading
from socket.
Tue, 22 Apr 2003 20:11:41 - Disconnecting one connection from `Ickx'
after 89 seconds idle
Tue, 22 Apr 2003 20:11:41 - pan - file sockets.c: line 263
(pan_socket_putline): assertion `!sock->error' failed
Tue, 22 Apr 2003 20:11:41 - GLib -
giounix.c:395:g_io_unix_get_flags()Error while getting flags for FD:
Bad file descriptor (9)
Tue, 22 Apr 2003 20:11:41 - GLib - Invalid file descriptor.
Tue, 22 Apr 2003 20:11:41 - GLib - Invalid file descriptor.
Tue, 22 Apr 2003 20:11:41 - GLib - Error flushing string: Bad file
descriptor
Tue, 22 Apr 2003 20:11:41 - News server connection count: 3
Comment 11 Charles Kerr 2003-04-22 20:12:59 UTC
STAY DEAD YOU 0.14.0 BUGS!!!!1!
Comment 12 Charles Kerr 2003-04-22 21:45:51 UTC
please attach the germane section of a similar Pan session started
with --debug.
Comment 13 Brian Morrison 2003-04-24 01:01:57 UTC
Log files sent by email to you Charles, sorry they are quite large and
rather undecipherable to mere mortals.
Comment 14 Charles Kerr 2003-07-26 17:02:38 UTC
Moving stale `needinfo' bugs from 0.14.0 milestone to `closed'.
Comment 15 Charles Kerr 2003-07-26 17:07:01 UTC
hm, looks like there's no `closed' in this new version of bugzilla?