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.
signature.asc
Description: Digital signature
_______________________________________________ Devl mailing list [EMAIL PROTECTED] http://dodo.freenetproject.org/cgi-bin/mailman/listinfo/devl
