On Thu, 18 Sep 2003, Toad wrote:

> On Wed, Sep 17, 2003 at 01:29:56PM -0400, Dan Merillat wrote:
> > 
> > Subject says it all.  Somewhere we're missing the OS/JVM letting us know
> > the connection has been closed. 
> 
> In all probability that is a JVM bug. We have seen such things before.
> However the closed connections will eventually be removed from the OCM,
> because when we try to send data on them it will fail and we will close
> the connection. No big problem.

Except since we have 10+ connections to the same node, we never bother
to close it.  Do we still have a buffer attached to each connection or
are they pooled?  If the former, it's a huge memory loss.  At least 50%
of the "open connections" on my node are really dead.  If the latter,
then it's completely low priority since it dosn't take up anything but
some real-estate on the OpenConnectionManager servlet page.

> If a connection is closed, ReadSelectorLoop will get -1 from read, and
> it will close the connection and notify the ConnectionHandler... in
> theory...

Probably need to run something that checks for dead connections.  Also,
a lot of these have been idle for WAY too long.  Perhaps walking the
list, counting connections that have been idle for more then 5/15
minutes, and nuking them as long as it dosn't close the last connection
to that node?

Run it periodically, should reclaim a LOT of connections.  (And, if we
CAN test for a closed connection by a read/write without messing up a
valid connection, we should try that as well)

--Dan

Attachment: pgp00000.pgp
Description: PGP signature

_______________________________________________
Devl mailing list
[EMAIL PROTECTED]
http://dodo.freenetproject.org/cgi-bin/mailman/listinfo/devl

Reply via email to