JDK-6765718 : Indicate which thread throwing OOME when generating the heap dump at OOME
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: svc
  • Affected Version: 7
  • Priority: P4
  • Status: Closed
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2008-10-30
  • Updated: 2011-04-23
  • Resolved: 2011-04-23
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 6 JDK 7 Other
6u25Fixed 7Fixed hs20Fixed
Related Reports
Relates :  
The hotspot built-in heap dumper now includes the stack traces in the heap dump (see 6306922).

The OutOfMemoryError is preallocated by the VM and the stack trace is filled after the heap dump.  So the stack traces have no indication which thread is throwing the OOME.  

It would be very helpful for diagnosing the OOME problem if tools like VisualVM can show which thread throwing OOME from the heap dump when +HeapDumpOnOutOfMemoryError is set.

EVALUATION http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/30f67acf635d

EVALUATION http://hg.openjdk.java.net/jdk7/hotspot-rt/hotspot/rev/30f67acf635d

SUGGESTED FIX For suggested fix see webrev at: http://cr.openjdk.java.net/~thurka/6765718/webrev.02

EVALUATION This looks like useful enhancement.