--- old/test/serviceability/tmtools/jstat/GcTest02.java 2017-01-13 14:21:30.740899447 +0300 +++ new/test/serviceability/tmtools/jstat/GcTest02.java 2017-01-13 14:21:30.616899446 +0300 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -32,7 +32,7 @@ * @modules java.base/jdk.internal.misc * @library /test/lib * @library ../share - * @run main/othervm -XX:+UsePerfData -XX:InitialHeapSize=128M -XX:MaxHeapSize=128M -XX:MaxMetaspaceSize=128M GcTest02 + * @run main/othervm -XX:+UsePerfData -XX:NewSize=4m -XX:InitialHeapSize=128M -XX:MaxHeapSize=128M -XX:MaxMetaspaceSize=128M -Xlog:gc+heap=debug,gc=debug,gc+ergo=debug GcTest02 */ public class GcTest02 { @@ -41,6 +41,8 @@ public static void main(String[] args) throws Exception { + GarbageProducer gp = new GarbageProducer(targetMemoryUsagePercent); + // We will be running "jstat -gc" tool JstatGcTool jstatGcTool = new JstatGcTool(ProcessHandle.current().getPid()); @@ -48,10 +50,8 @@ JstatGcResults measurement1 = jstatGcTool.measure(); measurement1.assertConsistency(); - GcProvoker gcProvoker = new GcProvoker(); - // Eat metaspace and heap then run the tool again and get the results asserting that they are reasonable - gcProvoker.allocateAvailableMetaspaceAndHeap(targetMemoryUsagePercent); + gp.allocateMetaspaceAndHeap(); // Collect garbage. Also updates VM statistics System.gc(); JstatGcResults measurement2 = jstatGcTool.measure();