# HG changeset patch # User jcbeyler # Date 1532541076 25200 # Node ID 224c202c02a5a14301e63749405ed032413a398c # Parent 7087c6657f359bdfdb01dddb454928f244e9671a 8207765: HeapMonitorTest.java intermittent failure Summary: Lower the interval rate and check GC objects too Reviewed-by: dcubed, sspitsyn Contributed-by: jcbeyler@google.com diff -r 7087c6657f35 -r 224c202c02a5 test/hotspot/jtreg/serviceability/jvmti/HeapMonitor/MyPackage/HeapMonitorTest.java --- a/test/hotspot/jtreg/serviceability/jvmti/HeapMonitor/MyPackage/HeapMonitorTest.java Wed Jul 25 09:48:31 2018 -0700 +++ b/test/hotspot/jtreg/serviceability/jvmti/HeapMonitor/MyPackage/HeapMonitorTest.java Wed Jul 25 10:51:16 2018 -0700 @@ -43,16 +43,20 @@ HeapMonitor.setAllocationIterations(Integer.parseInt(args[0])); } + // Put sampling rate to 100k to ensure samples are collected. + HeapMonitor.setSamplingInterval(100 * 1024); + if (!HeapMonitor.eventStorageIsEmpty()) { throw new RuntimeException("Storage is not empty at test start..."); } HeapMonitor.enableSamplingEvents(); List frameList = HeapMonitor.allocate(); - frameList.add(new Frame("main", "([Ljava/lang/String;)V", "HeapMonitorTest.java", 51)); + frameList.add(new Frame("main", "([Ljava/lang/String;)V", "HeapMonitorTest.java", 54)); Frame[] frames = frameList.toArray(new Frame[0]); - if (!HeapMonitor.obtainedEvents(frames)) { + if (!HeapMonitor.obtainedEvents(frames) + && !HeapMonitor.garbageContains(frames)) { throw new RuntimeException("Events not found with the right frames."); }