RFR: 8370203 - Add jcmd AOT.end_recording diagnostic command [v5]

Mat Carter macarte at openjdk.org
Tue Nov 25 00:58:12 UTC 2025


On Fri, 21 Nov 2025 18:43:44 GMT, Mat Carter <macarte at openjdk.org> wrote:

>> test/hotspot/jtreg/runtime/cds/appcds/aotCache/JcmdAOTEndRecordingTest.java line 31:
>> 
>>> 29:  * @summary Sanity test for Jcmd AOT.end_recording command
>>> 30:  * @library /test/lib
>>> 31:  * @build JcmdAOTEndRecordingTest
>> 
>> No need to build test explicitly, jtreg does it by itself.
>
> Thank you, I did not know that (copied another test as a template) - I've removed the build step in the header of both tests

I tried this and it seemed to work until I modified the test then the app.jar failed to build.

>> test/hotspot/jtreg/runtime/cds/appcds/aotCache/JcmdAOTEndRecordingTest.java line 57:
>> 
>>> 55:             try {
>>> 56:                 OutputAnalyzer output = ProcessTools.executeProcess(jcmd.getCommand());
>>> 57:                 output.shouldContain("AOT.end_recording is unsupported");
>> 
>> A little bit confused.  The check doesn't match test description.
>
> This test uses Lingered apps (enabling the jcmd connection), however the test framework here doesn't support creating the AOT cache - so I simply check that the connection works and the diagnostic command returns the expected value when you aren't recording a cache
> 
> I'm trying to create an additional test that allows jcmd to end training on an AOT recording, but there's some issues merging the jcmd test support and the aot test support;  I will make it clearer in this test about this limitation

Updated the test now, it runs twice, once in training mode and once not.  And checks the appropriate response from the diagnostic command

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

PR Review Comment: https://git.openjdk.org/jdk/pull/27965#discussion_r2558149696
PR Review Comment: https://git.openjdk.org/jdk/pull/27965#discussion_r2558153818


More information about the serviceability-dev mailing list