[concurrency-interest] jvm hang

David Holmes dcholmes at optusnet.com.au
Wed Mar 26 21:11:24 EDT 2008


Hi Jim,

Not really the right place so please respond off-list.

What platform are you on ? There are additional tools available on Solaris,
and some less good ones on linux, but little on Windows.

You might want to check out the J2SE Troubleshooting Guide for general
guidance:

http://java.sun.com/javase/6/webnotes/trouble/

The symptoms you describe sound like the system is hanging at a safepoint,
and I think there was a fix related to that in a later 6.0 update. But
that's a wild stab in the dark at this stage :)

Cheers,
David Holmes
  -----Original Message-----
  From: concurrency-interest-bounces at cs.oswego.edu
[mailto:concurrency-interest-bounces at cs.oswego.edu]On Behalf Of Jim Newsham
  Sent: Thursday, 27 March 2008 7:02 AM
  To: concurrency-interest at cs.oswego.edu
  Subject: [concurrency-interest] jvm hang




  Hi everyone,



  I apologize if this is not the best place to ask, but I don't know any
better resources (suggestions welcome).  Our application appears to hang the
JVM (1.6.0_02) pretty well, during application startup.  I am not able to
reproduce the problem on my machine (in fact, it does not occur on most
machines), but it occurs pretty frequently on a machine which I
unfortunately don't have direct access to.  Our application performs socket
operations (tcp and udp).  When the udp operations are disabled within the
app, the problem seems to go away, although that does not prove that it is
the cause of the problem.



  In this case, hanging means our application freezes and no further log
output is observed (including exceptions which might indicate a cause).  In
fact, the hang is so severe that jstat and jconsole are not able to connect
to the jvm.  I don't have detailed knowledge of the debug architecture, but
if jstat and jconsole fail to connect, it seems to me that there's a pretty
severe problem.



  In an attempt to get a thread dump, I added some code to our startup
sequence which starts a thread to perform a thread dump after some
command-line specified delay.  While waiting for the delay to elapse, it
prints countdown information to stderr ("dumping in 60 seconds". "dumping in
55 seconds". etc.).  However, this thread hangs too!  In other words, we see
the first few countdown messages, but no more.  Note that this thread does
not perform any locking and does not access external libraries; it only
sleeps in a loop until the time has elapsed, then uses java's ThreadMXBean
to get thread dump info.



  Does this sound like a JVM bug to you?  Are there any known bugs in this
JVM version which could account for this problem?  We haven't tried a more
recent version yet because we are releasing within just a few weeks and have
been developing/testing on a single JVM version.



  Thanks,

  Jim


-------------- next part --------------
An HTML attachment was scrubbed...
URL: /pipermail/attachments/20080327/72cef06a/attachment.html 


More information about the Concurrency-interest mailing list