RFR: 8255982: Extend BasicJMapTest to test with different GC Heap
Aleksey Shipilev
shade at openjdk.java.net
Tue Nov 10 17:52:55 UTC 2020
On Fri, 6 Nov 2020 12:54:28 GMT, Lin Zang <lzang at openjdk.org> wrote:
> The implementation of jmap tool depends on the implementation of object iteration by different GC heap.
> This patch extend the BasicJMapTest to cover differet GC Heap.
I believe this would fail when some GCs are not available. For example, in Minimal/Zero only Serial and Parallel are available. ZGC and Shenandoah are not available on all platforms. Plus, specifying another GC with `TEST_VM_OPTS` would probably fail with "multiple GCs selected".
You need to split the tests like this, and protect each config with `@requires`:
/*
* @test
* @summary Unit test for jmap utility
* @key intermittent
* @requires vm.gc.Parallel
* @library /test/lib
* @build jdk.test.lib.hprof.*
* @build jdk.test.lib.hprof.model.*
* @build jdk.test.lib.hprof.parser.*
* @build jdk.test.lib.hprof.util.*
* @run main/othervm/timeout=240 -XX:+UseParallelGC BasicJMapTest
*/
/*
* @test
* @summary Unit test for jmap utility
* @key intermittent
* @requires vm.gc.G1
* @library /test/lib
* @build jdk.test.lib.hprof.*
* @build jdk.test.lib.hprof.model.*
* @build jdk.test.lib.hprof.parser.*
* @build jdk.test.lib.hprof.util.*
* @run main/othervm/timeout=240 -XX:+UseG1GC BasicJMapTest
*/
...
Maybe there is a way to clean up multiple `@build` tags to make the test config less verbose.
-------------
Changes requested by shade (Reviewer).
PR: https://git.openjdk.java.net/jdk/pull/1094
More information about the serviceability-dev
mailing list