On Wed, 3 Dec 2025 14:59:10 GMT, Joel Sikström <[email protected]> wrote:

> Hello,
> 
>  If the initial heap size is set too low in the following tests a GC might 
> run, which will interfere with the tests and migh cause them to fail. To 
> solve this, we should run the tests with a bumped initial heap size so that 
> the GC does not interfere.
>  
> Test originally failed when run with `-XX:InitialRAMPercentage=0`. We now 
> explicitly set `-XX:InitialHeapSize=100M` and they now always pass.
> 
> Testing:
> * Rerun 10 times with Serial and Parallel for each test and they all pass

test/jdk/com/sun/jdi/MethodInvokeWithTraceOnTest.java line 32:

> 30:  * @run build TestScaffold VMConnection TargetListener TargetAdapter
> 31:  * @run compile -g MethodInvokeWithTraceOnTest.java
> 32:  * @run driver MethodInvokeWithTraceOnTest -XX:InitialHeapSize=100M

Are you seeing failures due to an ObjectCollectionException? If so, avoiding GC 
is not the proper way to fix it. Even with a larger initial heap, there can 
still be an object collected with ZGC. We shouldn't have any debugger tests 
that rely on a GC not happening in the debugee. The proper fix is usually 
calling ObjectReference.disableCollection(), although sometimes even that is 
not enough (the call can happen too late if the debugee is not suspended).

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

PR Review Comment: https://git.openjdk.org/jdk/pull/28637#discussion_r2589682868

Reply via email to