RFR: 8364090: Dump JFR recording on CrashOnOutOfMemoryError [v4]

Erik Gahlin egahlin at openjdk.org
Tue Jul 29 20:15:55 UTC 2025


On Tue, 29 Jul 2025 11:02:59 GMT, Erik Gahlin <egahlin at openjdk.org> wrote:

>> test/jdk/jdk/jfr/event/oldobject/TestEmergencyDumpAtOOM.java line 70:
>> 
>>> 68:         var p = ProcessTools.createTestJavaProcessBuilder(args).start();
>>> 69:         p.waitFor();
>>> 70:         var output = new OutputAnalyzer(p);
>> 
>> I'm not a big fan of var, since it degrades the readability. I like to know which types I deal with when reading code.
>> 
>> Not sure what others think, though, or if there is a Java style guideline similar to our hotspot style guide.
>
> I'm going to run some testing before approving. 
> 
> I don't have a strong opinion on var, but Stuart Marks wrote about when to use it a few years ago:
> https://openjdk.org/projects/amber/guides/lvti-style-guide

I get the following failure when testing your change:

`----------System.err:(15/955)----------
java.lang.RuntimeException: assertGreaterThan: expected 0 > 0
	at jdk.test.lib.Asserts.fail(Asserts.java:715)
	at jdk.test.lib.Asserts.assertGreaterThan(Asserts.java:403)
	at jdk.test.lib.Asserts.assertGreaterThan(Asserts.java:386)
	at jdk.jfr.event.oldobject.TestEmergencyDumpAtOOM.test(TestEmergencyDumpAtOOM.java:104)
	at jdk.jfr.event.oldobject.TestEmergencyDumpAtOOM.main(TestEmergencyDumpAtOOM.java:109)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
	at java.base/java.lang.reflect.Method.invoke(Method.java:565)
	at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138)
	at java.base/java.lang.Thread.run(Thread.java:1474)`

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

PR Review Comment: https://git.openjdk.org/jdk/pull/26468#discussion_r2240881106


More information about the hotspot-jfr-dev mailing list