--- a/test/jdk/jdk/jfr/event/gc/collection/TestG1ParallelPhases.java Thu Jun 27 03:33:44 2019 +0200
+++ b/test/jdk/jdk/jfr/event/gc/collection/TestG1ParallelPhases.java Thu Jun 27 11:48:32 2019 +0200
@@ -100,20 +100,30 @@
"CMRefRoots",
"WaitForStrongCLD",
"WeakCLDRoots",
- "UpdateRS",
- "ScanHCC",
- "ScanRS",
+ "MergeHCC",
+ "MergeRS",
+ "MergeLB",
+ "ScanHR",
"CodeRoots",
"ObjCopy",
"Termination",
"StringDedupQueueFixup",
"StringDedupTableFixup",
"RedirtyCards",
- // "PreserveCMReferents",
"NonYoungFreeCSet",
"YoungFreeCSet"
);
+ // Some GC phases may or may not occur depending on environment. Filter them out
+ // since we can not reliably guarantee that they occur (or not).
+ Set<String> optPhases = of(
+ "OptScanHR",
+ "OptMergeRS",
+ "OptCodeRoots",
+ "OptObjCopy"
+ );
+ usedPhases.removeAll(optPhases);
+
assertTrue(usedPhases.equals(allPhases), "Compare events expected and received"
+ ", Not found phases: " + allPhases.stream().filter(p -> !usedPhases.contains(p)).collect(joining(", "))
+ ", Not expected phases: " + usedPhases.stream().filter(p -> !allPhases.contains(p)).collect(joining(", ")));