On Wed, 21 Oct 2026 21:30:16 GMT, Chris Plummer <[email protected]> wrote:

>> Yasumasa Suenaga has updated the pull request with a new target base due to 
>> a merge or a rebase. The incremental webrev excludes the unrelated changes 
>> brought in by the merge/rebase. The pull request contains four additional 
>> commits since the last revision:
>> 
>>  - Re-enable HeapDumpTestWithActiveProcess.java
>>  - Merge branch 'master' into JDK-8381370
>>  - Use getFieldHolder() rather than getKlass()
>>  - 8381370: SA is not writing out flattened fields to the hprof file
>
> src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/utilities/AbstractHeapGraphWriter.java
>  line 95:
> 
>> 93:                                         if (name.equals(javaLangThread)) 
>> {
>> 94:                                             writeThread(instance, 
>> flatObjects);
>> 95:                                             return false;
> 
> I'm not sure why an early return is done here, but the consequence is that 
> the loop that drains flatObjects below is not executed, leaving references to 
> flattened Objects that are never written out. You might want to add a test 
> case for this if not too complicated.

I moved dumper for `flatObjects` to `finally` block in new commit. I have no 
idea for testing because we cannot be sure `java.lang.Thread` could be a value 
object.

BTW I'm not sure why this code work because this code seems to lack heap dump 
epilogue even though `writeHeapRecordPrologue()` is called at first. I 
confirmed ClhsdbDumpheap.java entered this block, but the test was passed 
normally...

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/33395#discussion_r4344139176

Reply via email to