Hi all,
We are occasionally getting a JVM freeze. It appears to happen when
both the application and the box it is running on are suddenly put
under load.
We are running JDK 1.3.1.08 on Solaris 8 with latest patches.
Truss output for the JVM process suggests that every thread has gone
to sleep:
poll(0xEC081448, 0, 2147483647) (sleeping...)
signotifywait() (sleeping...)
lwp_sema_wait(0xECC81E30) (sleeping...)
lwp_cond_wait(0xEC181FA8, 0xFF385558, 0x00000000) (sleeping...)
lwp_sema_wait(0xEDF81E30) (sleeping...)
lwp_mutex_lock(0xFF385908) (sleeping...)
lwp_sema_wait(0xECD81E30) (sleeping...)
accept(18, 0xED781624, 0xED781634, 1) (sleeping...)
lwp_sema_wait(0xED481E30) (sleeping...)
poll(0xED0814D0, 0, 300000) (sleeping...)
lwp_sema_wait(0xED181E30) (sleeping...)
lwp_sema_wait(0xECF81E30) (sleeping...)
poll(0xECE814C0, 0, 300000) (sleeping...)
lwp_sema_wait(0xEA181E30) (sleeping...)
lwp_sema_wait(0xECB81E30) (sleeping...)
lwp_sema_wait(0xED581E30) (sleeping...)
lwp_sema_wait(0xEC481E30) (sleeping...)
read(31, 0xEC380E20, 1) (sleeping...)
lwp_mutex_lock(0xFF385908) (sleeping...)
read(33, 0xEC280E20, 1) (sleeping...)
lwp_cond_wait(0xFF385548, 0xFF385558, 0xFF37EDB0) (sleeping...)
door_return(0x00000000, 0, 0x00000000, 0) (sleeping...)
Any help would be appreciated.
Thanks
Mark
Bill Scott - 30 Jun 2003 20:19 GMT
If the problem is in the Java application (rather than the JVM itself)
you should try to track down what Java was doing. A Stack Trace
helps. You can get one by sending a kill -3 to the process. Note
that they changed the output a bit sometime back (I forget how 1.3
works) so you may have to experiment. You can experiment on a
non-broken Java app so next time things freeze you'll know what to do.
-Bill