-
Bug
-
Resolution: Fixed
-
P3
-
None
-
b05
-
generic
-
generic
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8324375 | 22.0.1 | Alex Menkov | P3 | Resolved | Fixed | b02 |
JDK-8323430 | 22 | Alex Menkov | P3 | Resolved | Fixed | b32 |
For mounted virtual threads HeapDumper dumps 2 HPROF_GC_ROOT_THREAD_OBJ subrecord.
One of them refers to actual stack trace/stack references, another one has empty stack trace.
test/hotspot/jtreg/serviceability/jvmti/vthread/HeapDump/VThreadInHeapDump.java output contains:
thread 0x8141dda0, 6 frames
- [0] VThreadInHeapDumpTarg$VthreadMounted.run()V (VThreadInHeapDump.java:108)
Java Local Reference: VThreadInHeapDumpTarg$VthreadMounted
Java Local Reference: VThreadInHeapDumpTarg$VThreadMountedReferenced
- [1] java.lang.Thread.runWith(Ljava/lang/Object;Ljava/lang/Runnable;)V (Thread.java:1583)
Java Local Reference: java.lang.VirtualThread
Java Local Reference: java.lang.Class
Java Local Reference: VThreadInHeapDumpTarg$VthreadMounted
- [2] java.lang.VirtualThread.run(Ljava/lang/Runnable;)V (VirtualThread.java:321)
Java Local Reference: java.lang.VirtualThread
Java Local Reference: VThreadInHeapDumpTarg$VthreadMounted
Java Local Reference: java.lang.Class
- [3] java.lang.VirtualThread$VThreadContinuation$1.run()V (VirtualThread.java:201)
Java Local Reference: java.lang.VirtualThread$VThreadContinuation$1
- [4] jdk.internal.vm.Continuation.enter0()V (Continuation.java:320)
Java Local Reference: java.lang.VirtualThread$VThreadContinuation
- [5] jdk.internal.vm.Continuation.enter(Ljdk/internal/vm/Continuation;Z)V (Continuation.java:312)
Java Local Reference: java.lang.VirtualThread$VThreadContinuation
...
thread 0x8141dda0, 0 frames
One of them refers to actual stack trace/stack references, another one has empty stack trace.
test/hotspot/jtreg/serviceability/jvmti/vthread/HeapDump/VThreadInHeapDump.java output contains:
thread 0x8141dda0, 6 frames
- [0] VThreadInHeapDumpTarg$VthreadMounted.run()V (VThreadInHeapDump.java:108)
Java Local Reference: VThreadInHeapDumpTarg$VthreadMounted
Java Local Reference: VThreadInHeapDumpTarg$VThreadMountedReferenced
- [1] java.lang.Thread.runWith(Ljava/lang/Object;Ljava/lang/Runnable;)V (Thread.java:1583)
Java Local Reference: java.lang.VirtualThread
Java Local Reference: java.lang.Class
Java Local Reference: VThreadInHeapDumpTarg$VthreadMounted
- [2] java.lang.VirtualThread.run(Ljava/lang/Runnable;)V (VirtualThread.java:321)
Java Local Reference: java.lang.VirtualThread
Java Local Reference: VThreadInHeapDumpTarg$VthreadMounted
Java Local Reference: java.lang.Class
- [3] java.lang.VirtualThread$VThreadContinuation$1.run()V (VirtualThread.java:201)
Java Local Reference: java.lang.VirtualThread$VThreadContinuation$1
- [4] jdk.internal.vm.Continuation.enter0()V (Continuation.java:320)
Java Local Reference: java.lang.VirtualThread$VThreadContinuation
- [5] jdk.internal.vm.Continuation.enter(Ljdk/internal/vm/Continuation;Z)V (Continuation.java:312)
Java Local Reference: java.lang.VirtualThread$VThreadContinuation
...
thread 0x8141dda0, 0 frames
- backported by
-
JDK-8323430 Heap dump contains duplicate thread records for mounted virtual threads
- Resolved
-
JDK-8324375 Heap dump contains duplicate thread records for mounted virtual threads
- Resolved
- relates to
-
JDK-8321565 [REDO] Heap dump does not contain virtual Thread stack references
- Resolved
- links to
-
Commit openjdk/jdk22/3984a00e
-
Commit openjdk/jdk/dd8ae616
-
Review openjdk/jdk22/60
-
Review openjdk/jdk/17134
(2 links to)