Re: http fproxy ports are not closed

Dennis Nezic <[email protected]>
Newsgroups gmane.network.freenet.support
Message-ID <[email protected]>
On Thu, 22 Sep 2011 07:09:58 +0200, David ‘Bombe’ Roden wrote:
> On WOCHENTAG, tT. MONAT JJJJ 23:21:53 Dennis Nezic wrote:
> 
> > And, I still don't quite understand why you can't check the status
> > of a socket, or be notified of wget's FIN signal (It did send one,
> > didn't it, or am I missing something?) -- isn't that fundamental to
> > any tcp connection??
> 
> As Matthew already told you, finding out whether a socket has been
> disconnected can only be done by reading from or writing to the
> socket. We don’t do either until the request is finished. There’s
> your answer and it won’t change if you ask more often.

What determines whether a request is finished? When I browse freesites
normally, those requests expire gracefully.

Also, this bug (something fishy is definitely going on) is stranger
than I described, because I'm not exactly sure what creates those
abandoned open threads/sockets -- it's not simply a wget request, nor
one that ends in a failure (500 Internal Error) -- those all end
well. :S.

A thread dump says they (all 50+ of them) are locked in
FProxyFetchWaiter:

 "HTTP socket handler@15723301
   (1994)" daemon prio=10 tid=0x08a5f800 nid=0x76b6 in Object.wait
   ()  [0xb1ffe000]

  java.lang.Thread.State: WAITING 
   (on object monitor)

  at java.lang.Object.wait
   (Native Method)

  at java.lang.Object.wait
   (Object.java:485)

  at freenet.clients.http.FProxyFetchWaiter.getResult
   (FProxyFetchWaiter.java:28)

  - locked <0x6dc52720> 
   (a freenet.clients.http.FProxyFetchWaiter)

  at freenet.clients.http.FProxyToadlet.innerHandleMethodGET
   (FProxyToadlet.java:663)

  at freenet.clients.http.FProxyToadlet.handleMethodGET
   (FProxyToadlet.java:459)

  at sun.reflect.GeneratedMethodAccessor15.invoke
   (Unknown Source)

  at sun.reflect.DelegatingMethodAccessorImpl.invoke
   (DelegatingMethodAccessorImpl.java:25)

  at java.lang.reflect.Method.invoke
   (Method.java:597)

  at freenet.clients.http.ToadletContextImpl.handle
   (ToadletContextImpl.java:550)

  at freenet.clients.http.SimpleToadletServer$SocketHandler.run
   (SimpleToadletServer.java:989)

  at freenet.support.PooledExecutor$MyThread.realRun
   (PooledExecutor.java:233)

  at freenet.support.io.NativeThread.run
   (NativeThread.java:130)
_______________________________________________
Support mailing list
[email protected]
http://news.gmane.org/gmane.network.freenet.support
Unsubscribe at http://emu.freenetproject.org/cgi-bin/mailman/listinfo/support
Or mailto:[email protected]?subject=unsubscribe
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.