On Thu, Oct 16, 2003 at 08:52:32PM -0700, Mike Stump wrote:
> Well, deadlocks continue unabated, so I wrote up code to find out when
> my node is hung and more actively kill it.
> 
> I've found that if I boost the connections from 100 back to the
> default, and drop the maximum number of threads down to 30, my node
> seems to last a little longer, with that, I now only see deadlocks
> this often:
> 
> 200310162011
> 200310161850
> 200310161014
> 200310160643
> 200310160051
> 200310160023
> 200310160012
> 
> I've not narrowed down why it is dead locking...  And to those that
> asked for a backtrace, as I've said before, after the node is dead
> locked, tracing doesn't work, fred doesn't work...

Then it's a JVM problem and we can't do much about it. What JVM are you
using?
> 
> Starting with: -Xmx84m
> 
> and in freenet.conf:
> storeSize=65G
> dontLimitClients=yes
> logOutputBytes=true
> logSuccessfulInsertRequestDist=true
> logInboundContacts=true
> logOutboundContacts=true
> logInboundRequests=true
> announcementFirstDelay=120000
> defaultToSimpleUIMode=false
> logInboundInsertRequestDist=true
> logSuccessfulInsertRequestDist=true
> # Too few of these can deadlock the node I think
> # maxNodeConnections=100
> outputBandwidthLimit=8000
> logOutboundRequests=true
> requestDelayCutoff=500
> # maxRequestsPerInterval=900
> defaultResetProbability=0.02
> cacheProbPerHop=0.02
> # Try and limit deadlocking
> maximumThreads=30
> 
> 
> Anyway, I've seen these on stderr:
> 
> java.io.IOException: already closed tcp/connection: CLOSED,[EMAIL PROTECTED]
>         at freenet.transport.tcpConnection.getSocket(tcpConnection.java:119)
>         at freenet.ConnectionHandler.<init>(ConnectionHandler.java:287)
>         at 
> freenet.OpenConnectionManager$ConnectionJob.run(OpenConnectionManager.java:1375)
>         at 
> freenet.OpenConnectionManager.createConnection(OpenConnectionManager.java:534)
>         at freenet.node.ConnectionOpener.checkpoint(ConnectionOpener.java:178)
>         at freenet.node.states.maintenance.Checkpoint.checkpoint(Checkpoint.java:56)
>         at freenet.node.states.maintenance.Checkpoint.received(Checkpoint.java:49)
>         at freenet.node.StateChain.received(StateChain.java:195)
>         at freenet.node.StateChain.received(StateChain.java:71)
>         at 
> freenet.node.StandardMessageHandler$Ticket.run(StandardMessageHandler.java:234)
>         at 
> freenet.node.StandardMessageHandler$Ticket.received(StandardMessageHandler.java:172)
>         at 
> freenet.node.StandardMessageHandler$Ticket.access$100(StandardMessageHandler.java:124)
>         at freenet.node.StandardMessageHandler.handle(StandardMessageHandler.java:72)
>         at freenet.Ticker$Event.run(Ticker.java:323)
>         at freenet.thread.QThreadFactory$QThread.run(QThreadFactory.java:234)
> java.io.IOException: already closed tcp/connection: CLOSED,[EMAIL PROTECTED]
>         at freenet.transport.tcpConnection.getSocket(tcpConnection.java:119)
>         at freenet.ConnectionHandler.<init>(ConnectionHandler.java:287)
>         at 
> freenet.OpenConnectionManager$ConnectionJob.run(OpenConnectionManager.java:1375)
>         at 
> freenet.OpenConnectionManager.createConnection(OpenConnectionManager.java:534)
>         at freenet.node.ConnectionOpener.checkpoint(ConnectionOpener.java:178)
>         at freenet.node.states.maintenance.Checkpoint.checkpoint(Checkpoint.java:56)
>         at freenet.node.states.maintenance.Checkpoint.received(Checkpoint.java:49)
>         at freenet.node.StateChain.received(StateChain.java:195)
>         at freenet.node.StateChain.received(StateChain.java:71)
>         at 
> freenet.node.StandardMessageHandler$Ticket.run(StandardMessageHandler.java:234)
>         at 
> freenet.node.StandardMessageHandler$Ticket.received(StandardMessageHandler.java:172)
>         at 
> freenet.node.StandardMessageHandler$Ticket.access$100(StandardMessageHandler.java:124)
>         at freenet.node.StandardMessageHandler.handle(StandardMessageHandler.java:72)
>         at freenet.Ticker$Event.run(Ticker.java:323)
>         at freenet.thread.QThreadFactory$QThread.run(QThreadFactory.java:234)
> java.io.IOException: already closed tcp/connection: CLOSED,[EMAIL PROTECTED]
>         at freenet.transport.tcpConnection.getSocket(tcpConnection.java:119)
>         at freenet.ConnectionHandler.<init>(ConnectionHandler.java:287)
>         at 
> freenet.OpenConnectionManager$ConnectionJob.run(OpenConnectionManager.java:1375)
>         at 
> freenet.OpenConnectionManager.createConnection(OpenConnectionManager.java:534)
>         at freenet.node.ConnectionOpener.checkpoint(ConnectionOpener.java:178)
>         at freenet.node.states.maintenance.Checkpoint.checkpoint(Checkpoint.java:56)
>         at freenet.node.states.maintenance.Checkpoint.received(Checkpoint.java:49)
>         at freenet.node.StateChain.received(StateChain.java:195)
>         at freenet.node.StateChain.received(StateChain.java:71)
>         at 
> freenet.node.StandardMessageHandler$Ticket.run(StandardMessageHandler.java:234)
>         at 
> freenet.node.StandardMessageHandler$Ticket.received(StandardMessageHandler.java:172)
>         at 
> freenet.node.StandardMessageHandler$Ticket.access$100(StandardMessageHandler.java:124)
>         at freenet.node.StandardMessageHandler.handle(StandardMessageHandler.java:72)
>         at freenet.Ticker$Event.run(Ticker.java:323)
>         at freenet.thread.QThreadFactory$QThread.run(QThreadFactory.java:234)
> java.io.IOException: already closed tcp/connection: CLOSED,[EMAIL PROTECTED]
>         at freenet.transport.tcpConnection.getSocket(tcpConnection.java:119)
>         at freenet.ConnectionHandler.<init>(ConnectionHandler.java:287)
>         at 
> freenet.OpenConnectionManager$ConnectionJob.run(OpenConnectionManager.java:1375)
>         at 
> freenet.OpenConnectionManager.createConnection(OpenConnectionManager.java:534)
>         at freenet.node.ConnectionOpener.checkpoint(ConnectionOpener.java:178)
>         at freenet.node.states.maintenance.Checkpoint.checkpoint(Checkpoint.java:56)
>         at freenet.node.states.maintenance.Checkpoint.received(Checkpoint.java:49)
>         at freenet.node.StateChain.received(StateChain.java:195)
>         at freenet.node.StateChain.received(StateChain.java:71)
>         at 
> freenet.node.StandardMessageHandler$Ticket.run(StandardMessageHandler.java:234)
>         at 
> freenet.node.StandardMessageHandler$Ticket.received(StandardMessageHandler.java:172)
>         at 
> freenet.node.StandardMessageHandler$Ticket.access$100(StandardMessageHandler.java:124)
>         at freenet.node.StandardMessageHandler.handle(StandardMessageHandler.java:72)
>         at freenet.Ticker$Event.run(Ticker.java:323)
>         at freenet.thread.QThreadFactory$QThread.run(QThreadFactory.java:234)
> 
> 
> 
> 
> ==================================================
> Starting Freenet now: Done
> java.io.IOException: already closed tcp/connection: CLOSED,[EMAIL PROTECTED]
>         at freenet.transport.tcpConnection.getSocket(tcpConnection.java:119)
>         at freenet.ConnectionHandler.<init>(ConnectionHandler.java:287)
>         at 
> freenet.OpenConnectionManager$ConnectionJob.run(OpenConnectionManager.java:1375)
>         at 
> freenet.OpenConnectionManager.createConnection(OpenConnectionManager.java:534)
>         at freenet.node.ConnectionOpener.checkpoint(ConnectionOpener.java:178)
>         at freenet.node.states.maintenance.Checkpoint.checkpoint(Checkpoint.java:56)
>         at freenet.node.states.maintenance.Checkpoint.received(Checkpoint.java:49)
>         at freenet.node.StateChain.received(StateChain.java:195)
>         at freenet.node.StateChain.received(StateChain.java:71)
>         at 
> freenet.node.StandardMessageHandler$Ticket.run(StandardMessageHandler.java:234)
>         at 
> freenet.node.StandardMessageHandler$Ticket.received(StandardMessageHandler.java:172)
>         at 
> freenet.node.StandardMessageHandler$Ticket.access$100(StandardMessageHandler.java:124)
>         at freenet.node.StandardMessageHandler.handle(StandardMessageHandler.java:72)
>         at freenet.Ticker$Event.run(Ticker.java:323)
>         at freenet.thread.QThreadFactory$QThread.run(QThreadFactory.java:234)
> java.io.IOException: already closed tcp/connection: CLOSED,[EMAIL PROTECTED]
>         at freenet.transport.tcpConnection.getSocket(tcpConnection.java:119)
>         at freenet.ConnectionHandler.<init>(ConnectionHandler.java:287)
>         at 
> freenet.OpenConnectionManager$ConnectionJob.run(OpenConnectionManager.java:1375)
>         at 
> freenet.OpenConnectionManager.createConnection(OpenConnectionManager.java:534)
>         at freenet.node.ConnectionOpener.checkpoint(ConnectionOpener.java:178)
>         at freenet.node.states.maintenance.Checkpoint.checkpoint(Checkpoint.java:56)
>         at freenet.node.states.maintenance.Checkpoint.received(Checkpoint.java:49)
>         at freenet.node.StateChain.received(StateChain.java:195)
>         at freenet.node.StateChain.received(StateChain.java:71)
>         at 
> freenet.node.StandardMessageHandler$Ticket.run(StandardMessageHandler.java:234)
>         at 
> freenet.node.StandardMessageHandler$Ticket.received(StandardMessageHandler.java:172)
>         at 
> freenet.node.StandardMessageHandler$Ticket.access$100(StandardMessageHandler.java:124)
>         at freenet.node.StandardMessageHandler.handle(StandardMessageHandler.java:72)
>         at freenet.Ticker$Event.run(Ticker.java:323)
>         at freenet.thread.QThreadFactory$QThread.run(QThreadFactory.java:234)
> java.io.IOException: already closed tcp/connection: CLOSED,[EMAIL PROTECTED]
>         at freenet.transport.tcpConnection.getSocket(tcpConnection.java:119)
>         at freenet.ConnectionHandler.<init>(ConnectionHandler.java:287)
>         at 
> freenet.OpenConnectionManager$ConnectionJob.run(OpenConnectionManager.java:1375)
>         at 
> freenet.OpenConnectionManager.createConnection(OpenConnectionManager.java:534)
>         at freenet.node.ConnectionOpener.checkpoint(ConnectionOpener.java:178)
>         at freenet.node.states.maintenance.Checkpoint.checkpoint(Checkpoint.java:56)
>         at freenet.node.states.maintenance.Checkpoint.received(Checkpoint.java:49)
>         at freenet.node.StateChain.received(StateChain.java:195)
>         at freenet.node.StateChain.received(StateChain.java:71)
>         at 
> freenet.node.StandardMessageHandler$Ticket.run(StandardMessageHandler.java:234)
>         at 
> freenet.node.StandardMessageHandler$Ticket.received(StandardMessageHandler.java:172)
>         at 
> freenet.node.StandardMessageHandler$Ticket.access$100(StandardMessageHandler.java:124)
>         at freenet.node.StandardMessageHandler.handle(StandardMessageHandler.java:72)
>         at freenet.Ticker$Event.run(Ticker.java:323)
>         at freenet.thread.QThreadFactory$QThread.run(QThreadFactory.java:234)
> java.io.IOException: already closed tcp/connection: CLOSED,[EMAIL PROTECTED]
>         at freenet.transport.tcpConnection.getSocket(tcpConnection.java:119)
>         at freenet.ConnectionHandler.<init>(ConnectionHandler.java:287)
>         at 
> freenet.OpenConnectionManager$ConnectionJob.run(OpenConnectionManager.java:1375)
>         at 
> freenet.OpenConnectionManager.createConnection(OpenConnectionManager.java:534)
>         at freenet.node.ConnectionOpener.checkpoint(ConnectionOpener.java:178)
>         at freenet.node.states.maintenance.Checkpoint.checkpoint(Checkpoint.java:56)
>         at freenet.node.states.maintenance.Checkpoint.received(Checkpoint.java:49)
>         at freenet.node.StateChain.received(StateChain.java:195)
>         at freenet.node.StateChain.received(StateChain.java:71)
>         at 
> freenet.node.StandardMessageHandler$Ticket.run(StandardMessageHandler.java:234)
>         at 
> freenet.node.StandardMessageHandler$Ticket.received(StandardMessageHandler.java:172)
>         at 
> freenet.node.StandardMessageHandler$Ticket.access$100(StandardMessageHandler.java:124)
>         at freenet.node.StandardMessageHandler.handle(StandardMessageHandler.java:72)
>         at freenet.Ticker$Event.run(Ticker.java:323)
>         at freenet.thread.QThreadFactory$QThread.run(QThreadFactory.java:234)
> java.io.IOException: already closed tcp/connection: CLOSED,[EMAIL PROTECTED]
>         at freenet.transport.tcpConnection.getSocket(tcpConnection.java:119)
>         at freenet.ConnectionHandler.<init>(ConnectionHandler.java:287)
>         at 
> freenet.OpenConnectionManager$ConnectionJob.run(OpenConnectionManager.java:1375)
>         at 
> freenet.OpenConnectionManager.createConnection(OpenConnectionManager.java:534)
>         at freenet.node.ConnectionOpener.checkpoint(ConnectionOpener.java:178)
>         at freenet.node.states.maintenance.Checkpoint.checkpoint(Checkpoint.java:56)
>         at freenet.node.states.maintenance.Checkpoint.received(Checkpoint.java:49)
>         at freenet.node.StateChain.received(StateChain.java:195)
>         at freenet.node.StateChain.received(StateChain.java:71)
>         at 
> freenet.node.StandardMessageHandler$Ticket.run(StandardMessageHandler.java:234)
>         at 
> freenet.node.StandardMessageHandler$Ticket.received(StandardMessageHandler.java:172)
>         at 
> freenet.node.StandardMessageHandler$Ticket.access$100(StandardMessageHandler.java:124)
>         at freenet.node.StandardMessageHandler.handle(StandardMessageHandler.java:72)
>         at freenet.Ticker$Event.run(Ticker.java:323)
>         at freenet.thread.QThreadFactory$QThread.run(QThreadFactory.java:234)
> 
> 
> 
> ==================================================
> Starting Freenet now: Done
> java.io.IOException: already closed tcp/connection: CLOSED,[EMAIL PROTECTED]
>         at freenet.transport.tcpConnection.getSocket(tcpConnection.java:119)
>         at freenet.ConnectionHandler.<init>(ConnectionHandler.java:287)
>         at 
> freenet.OpenConnectionManager$ConnectionJob.run(OpenConnectionManager.java:1375)
>         at 
> freenet.OpenConnectionManager.createConnection(OpenConnectionManager.java:534)
>         at freenet.node.ConnectionOpener.checkpoint(ConnectionOpener.java:178)
>         at freenet.node.states.maintenance.Checkpoint.checkpoint(Checkpoint.java:56)
>         at freenet.node.states.maintenance.Checkpoint.received(Checkpoint.java:49)
>         at freenet.node.StateChain.received(StateChain.java:195)
>         at freenet.node.StateChain.received(StateChain.java:71)
>         at 
> freenet.node.StandardMessageHandler$Ticket.run(StandardMessageHandler.java:234)
>         at 
> freenet.node.StandardMessageHandler$Ticket.received(StandardMessageHandler.java:172)
>         at 
> freenet.node.StandardMessageHandler$Ticket.access$100(StandardMessageHandler.java:124)
>         at freenet.node.StandardMessageHandler.handle(StandardMessageHandler.java:72)
>         at freenet.Ticker$Event.run(Ticker.java:323)
>         at freenet.thread.QThreadFactory$QThread.run(QThreadFactory.java:234)
> java.io.IOException: already closed tcp/connection: CLOSED,[EMAIL PROTECTED]
>         at freenet.transport.tcpConnection.getSocket(tcpConnection.java:119)
>         at freenet.ConnectionHandler.<init>(ConnectionHandler.java:287)
>         at 
> freenet.OpenConnectionManager$ConnectionJob.run(OpenConnectionManager.java:1375)
>         at 
> freenet.OpenConnectionManager.createConnection(OpenConnectionManager.java:534)
>         at freenet.node.ConnectionOpener.checkpoint(ConnectionOpener.java:178)
>         at freenet.node.states.maintenance.Checkpoint.checkpoint(Checkpoint.java:56)
>         at freenet.node.states.maintenance.Checkpoint.received(Checkpoint.java:49)
>         at freenet.node.StateChain.received(StateChain.java:195)
>         at freenet.node.StateChain.received(StateChain.java:71)
>         at 
> freenet.node.StandardMessageHandler$Ticket.run(StandardMessageHandler.java:234)
>         at 
> freenet.node.StandardMessageHandler$Ticket.received(StandardMessageHandler.java:172)
>         at 
> freenet.node.StandardMessageHandler$Ticket.access$100(StandardMessageHandler.java:124)
>         at freenet.node.StandardMessageHandler.handle(StandardMessageHandler.java:72)
>         at freenet.Ticker$Event.run(Ticker.java:323)
>         at freenet.thread.QThreadFactory$QThread.run(QThreadFactory.java:234)
> java.io.IOException: already closed tcp/connection: CLOSED,[EMAIL PROTECTED]
>         at freenet.transport.tcpConnection.getSocket(tcpConnection.java:119)
>         at freenet.ConnectionHandler.<init>(ConnectionHandler.java:287)
>         at 
> freenet.OpenConnectionManager$ConnectionJob.run(OpenConnectionManager.java:1375)
>         at 
> freenet.OpenConnectionManager.createConnection(OpenConnectionManager.java:534)
>         at freenet.node.ConnectionOpener.checkpoint(ConnectionOpener.java:178)
>         at freenet.node.states.maintenance.Checkpoint.checkpoint(Checkpoint.java:56)
>         at freenet.node.states.maintenance.Checkpoint.received(Checkpoint.java:49)
>         at freenet.node.StateChain.received(StateChain.java:195)
>         at freenet.node.StateChain.received(StateChain.java:71)
>         at 
> freenet.node.StandardMessageHandler$Ticket.run(StandardMessageHandler.java:234)
>         at 
> freenet.node.StandardMessageHandler$Ticket.received(StandardMessageHandler.java:172)
>         at 
> freenet.node.StandardMessageHandler$Ticket.access$100(StandardMessageHandler.java:124)
>         at freenet.node.StandardMessageHandler.handle(StandardMessageHandler.java:72)
>         at freenet.Ticker$Event.run(Ticker.java:323)
>         at freenet.thread.QThreadFactory$QThread.run(QThreadFactory.java:234)
> 
> 
> Oh, and the idea introducing an incompatible version seems like a bad
> idea, the second we do that, nothing works, there will be 0 content on
> the new freenet, save for the few brave souls that move to the new
> version, and then, when they do, all their content disappears from
> stable freenet.  So, at first we piss off half the user base, and then
> after they steam for a while, we piss off the other half.  And after
> all that, we might be no closer to anything useful.  Pissing off 100%
> of the users in deparate hope that it might improve, well, anyway, I
> digress, do what you want.  Your project, your fun and we'll all live
> and die by any choice you wish to make.
> _______________________________________________
> Devl mailing list
> [EMAIL PROTECTED]
> http://dodo.freenetproject.org/cgi-bin/mailman/listinfo/devl

-- 
Matthew J Toseland - [EMAIL PROTECTED]
Freenet Project Official Codemonkey - http://freenetproject.org/
ICTHUS - Nothing is impossible. Our Boss says so.

Attachment: signature.asc
Description: Digital signature

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

Reply via email to