< prev index next >

test/jdk/jdk/jfr/event/oldobject/TestMetadataRetention.java

Print this page

 25 import java.time.Instant;
 26 import java.util.List;
 27 
 28 import jdk.jfr.Event;
 29 import jdk.jfr.Recording;
 30 import jdk.jfr.consumer.RecordedClass;
 31 import jdk.jfr.consumer.RecordedClassLoader;
 32 import jdk.jfr.consumer.RecordedEvent;
 33 import jdk.jfr.consumer.RecordedFrame;
 34 import jdk.jfr.consumer.RecordedStackTrace;
 35 import jdk.jfr.consumer.RecordedThread;
 36 import jdk.jfr.internal.test.WhiteBox;
 37 import jdk.test.lib.Asserts;
 38 import jdk.test.lib.jfr.EventNames;
 39 import jdk.test.lib.jfr.Events;
 40 import jdk.test.lib.jfr.TestClassLoader;
 41 
 42 /**
 43  * @test
 44  * @summary The test verifies that an old object sample maintains references to "stale" metadata
 45  * @requires vm.hasJFR
 46  * @requires vm.flagless


 47  * @modules jdk.jfr/jdk.jfr.internal.test
 48  * @library /test/lib /test/jdk
 49  * @build jdk.jfr.event.oldobject.TestMetadataObject
 50  * @run main/othervm -XX:TLABSize=2k -Xmx16m jdk.jfr.event.oldobject.TestMetadataRetention
 51  */
 52 public final class TestMetadataRetention {
 53     private final static String TEST_PACKAGE = TestMetadataRetention.class.getPackage().getName();
 54     private final static String TEST_CLASS_LOADER_NAME = "JFR TestClassLoader";
 55     private final static String TEST_CLASS_NAME = TEST_PACKAGE + ".TestMetadataObject";
 56     private final static String ALLOCATOR_THREAD_NAME = "TestAllocationThread";
 57 
 58     public static ClassLoader testClassLoader;
 59     public static Object leakObject;
 60     public static Thread allocatorThread;
 61     public static Class<?> testClass;
 62 
 63     static class ChunkRotation extends Event {
 64     }
 65 
 66     public static void main(String[] args) throws Throwable {

 25 import java.time.Instant;
 26 import java.util.List;
 27 
 28 import jdk.jfr.Event;
 29 import jdk.jfr.Recording;
 30 import jdk.jfr.consumer.RecordedClass;
 31 import jdk.jfr.consumer.RecordedClassLoader;
 32 import jdk.jfr.consumer.RecordedEvent;
 33 import jdk.jfr.consumer.RecordedFrame;
 34 import jdk.jfr.consumer.RecordedStackTrace;
 35 import jdk.jfr.consumer.RecordedThread;
 36 import jdk.jfr.internal.test.WhiteBox;
 37 import jdk.test.lib.Asserts;
 38 import jdk.test.lib.jfr.EventNames;
 39 import jdk.test.lib.jfr.Events;
 40 import jdk.test.lib.jfr.TestClassLoader;
 41 
 42 /**
 43  * @test
 44  * @summary The test verifies that an old object sample maintains references to "stale" metadata

 45  * @requires vm.flagless
 46  * @requires vm.hasJFR
 47  * @requires !(vm.opt.final.UseCompactObjectHeaders == true | vm.opt.final.UseShenandoahGC == true)
 48  * @modules jdk.jfr/jdk.jfr.internal.test
 49  * @library /test/lib /test/jdk
 50  * @build jdk.jfr.event.oldobject.TestMetadataObject
 51  * @run main/othervm -XX:TLABSize=2k -Xmx16m jdk.jfr.event.oldobject.TestMetadataRetention
 52  */
 53 public final class TestMetadataRetention {
 54     private final static String TEST_PACKAGE = TestMetadataRetention.class.getPackage().getName();
 55     private final static String TEST_CLASS_LOADER_NAME = "JFR TestClassLoader";
 56     private final static String TEST_CLASS_NAME = TEST_PACKAGE + ".TestMetadataObject";
 57     private final static String ALLOCATOR_THREAD_NAME = "TestAllocationThread";
 58 
 59     public static ClassLoader testClassLoader;
 60     public static Object leakObject;
 61     public static Thread allocatorThread;
 62     public static Class<?> testClass;
 63 
 64     static class ChunkRotation extends Event {
 65     }
 66 
 67     public static void main(String[] args) throws Throwable {
< prev index next >