Recently we have seen node lockups with most threads waiting to lock the routing table, and none actually having a lock on it. My node just produced a stack dump where many MANY threads were: - waiting to lock <0x46526ad8> (a freenet.diagnostics.Binomial) at freenet.diagnostics.RandomVar.add(RandomVar.java:103) at freenet.diagnostics.Binomial.add(Binomial.java:36) at freenet.diagnostics.StandardDiagnostics.occurrenceBinomial(StandardDiagnostics.java:139) at freenet.OpenConnectionManager.put(OpenConnectionManager.java:124)
0x46526ad8 does not occur in any other context. Conclusion: Under heavy locking load, (or under some other condition only recently triggered because of recent bugs and changes w.r.t. open connections only routing), Sun JVM 1.4.2 can get these deadlocks. It is NOT in our code, because it occurs with the Binomial AS WELL AS with the completely unrelated routing table locks. We can recommend people use 1.4.1... we can perhaps report the bug to Sun... can we do anything else? Recommending people use 1.4.1 is in itself rather distasteful... -- Matthew J Toseland - [EMAIL PROTECTED] Freenet Project Official Codemonkey - http://freenetproject.org/ ICTHUS - Nothing is impossible. Our Boss says so.
freenet-error.log.gz
Description: Binary data
pgp00000.pgp
Description: PGP signature
