On Jan 13, 2009, at 5:49 AM, eros wrote:
I think you have a problem with system entropy that's causing a
problem generating pseudo-random numbers.
While the server startup was stalled, I sent a kill -3 signal to the
server process (think I mentioned doing this earlier in this thread)
and got the following thread stack:
Yep that's it!
Cool.
I tried the kill -3 thingy (didn't know about it, thanks!) and got
the a
stack trace just like yours. Having the server do some expensive
calculations while tomcat starts up seems to improve the situation a
bit
(probably because this activity generates entropy).
The thing that really does the trick is:
mv /dev/random /dev/random.bak
mv /dev/urandom dev/random
even if I don't particularly like the security implications of this.
Right. From what I've read it's possible that we could also change the
algorithm being used (e.g. SHA1 which apparently does not use /dev/
random) to reduce the likelihood of this happening (prolly with some
tradeoff on security). I'd also want to better understand what's going
on in the KeystoreUtil static initializer -- it's new code for me...
The problem seems to be working on underused servers and is
apparently more
debian-related (see
http://n0tablog.wordpress.com/2007/11/24/running-out-of-entropy-in-debian-etch/)
than geronimo-related.
You'll want to drop the trailing ')' for this url to work. Thanks for
the pointer. I've see this basic problem occur on non-debian systems
also. I'm no entropy expert (though my wife might argue about
that... ;-).
--kevan