<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hi<div class=""><br class=""></div><div class=""><div class="">I think that '<span style="orphans: 2; white-space: pre-wrap; widows: 2;" class="">@run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI' could be replaced with @run main/driver because</span></div><div class=""><span style="orphans: 2; widows: 2;" class=""><span style="white-space: pre-wrap;" class="">test spawns other process and don't use any options and WB.</span></span></div></div><div class=""><span style="orphans: 2; widows: 2;" class=""><span style="white-space: pre-wrap;" class=""><br class=""></span></span></div><div class="">Also I think you need to have several separate headers for each test instead of multiple runs. There is only one result per test (not for every run) and test is is skipped if any of GC is not supported. Additionally these tests might be guarded with require instead of throwing SkipException. So your tests is not going to be executed saying if ZGC is selected by jtreg CLI. <span style="orphans: 2; white-space: pre-wrap; widows: 2;" class="">Here is the example of fix which update test with different GCs. It contains a lot of examples of similar tests.</span></div><div class=""><a href="http://hg.openjdk.java.net/jdk/jdk/rev/9b8926bf85c1" class="">http://hg.openjdk.java.net/jdk/jdk/rev/9b8926bf85c1</a></div><div class=""><br class=""></div><div class="">And in the case of new timeouts/other failures we will know exactly which GC was used right in the report.</div><div class=""><br class=""></div><div class="">Leonid</div><div class=""><div><br class=""></div><div><blockquote type="cite" class=""><div class="">On May 30, 2019, at 12:29 PM, Kim Barrett <<a href="mailto:kim.barrett@oracle.com" class="">kim.barrett@oracle.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">Please review this change to a test to attempt to eliminate very<br class="">intermittent timeouts in Oracle's regression testing.  (Note that more<br class="">recent failures don't involve agent timeouts, as the test has been<br class="">modified to no longer use agent mode.)<br class=""><br class="">The test currently consists of one process which launches child<br class="">processes to test each of a set of GCs.  We suspect that approach may<br class="">result in the single main process exceeding the normal timeout period<br class="">when under high load or on a slow machine (or both).  If so, the<br class="">situation will only get worse if more GCs are added to the current<br class="">(incomplete) set.<br class=""><br class="">We attempt to address this by instead having a separate main process<br class="">for each tested GC, with the GC to test specified by a command line<br class="">argument.<br class=""><br class="">[It's possible there is some other underlying problem that has nothing  <br class="">to do with the specific test, in which case this change might actually<br class="">result in more frequent timeouts of this test.  If that happens, we'll<br class="">deal with it as a new problem, with more information than we have now,<br class="">possibly including extra timing information from JDK-8219149.]<br class=""><br class="">CR:<br class=""><a href="https://bugs.openjdk.java.net/browse/JDK-8212630" class="">https://bugs.openjdk.java.net/browse/JDK-8212630</a><br class=""><br class="">Webrev:<br class="">http://cr.openjdk.java.net/~kbarrett/8212630/open.00/<br class=""><br class="">Testing:<br class="">A few dozen local executions of the test.  That's not enough and<br class="">probably not in a configuration to encounter the problem -- failures<br class="">have been occurring on the order of 0.5% of the time under high load.<br class=""><br class=""></div></div></blockquote></div><br class=""></div></body></html>