Hi Evgeniya,

it seems like there is no need to use Serial GC in java/lang/ref/EnqueuePollRace.java [1],
so it does make sense to remove that option instead of adding the @requires tag.

Thanks,
Filipp.

[1] https://bugs.openjdk.java.net/browse/JDK-8051723

On 11/06/2014 06:36 PM, Evgeniya Stepanova wrote:
New webrev:
http://cr.openjdk.java.net/~eistepan/8062536/webrev.01/

Thanks,
Evgeniya Stepanova
On 06.11.2014 17:35, Yekaterina Kantserova wrote:
Thanks a lot!

On 11/06/2014 02:05 PM, Evgeniya Stepanova wrote:
Hi Katja,

Ok, this seems to be a perfect solution. Thank you. I'll change the diff accordingly.


Thanks,
Evgeniya Stepanova
On 06.11.2014 16:56, Yekaterina Kantserova wrote:
Hi Dima,

On 11/06/2014 11:22 AM, Dmitry Fazunenko wrote:
Hi Katja,

You are right, there will be no conflict, because test ignores any external VM flags.
So, adding @requires seems unnecessary here, but...

Ignoring external options is bad thing, such "selfish" tests are not applicable for other areas, like GC, compiler, RT.

This particular case is to test the defined flags are shown up as expected.

Evgeniya,

would you mind to change JpsHelper.java instead?

+++ b/test/sun/tools/jps/JpsHelper.java
@@ -93,7 +93,7 @@
     /**
      * VM arguments to start test application with
      */
-    public static final String[] VM_ARGS = {"-Xmx512m", "-XX:+UseParallelGC"};
+ public static final String[] VM_ARGS = {"-Xmx512m", "-XX:+PrintGCDetails"};
     /**
      * VM flag to start test application with
      */

Best regards,
Katja




@requires will allow to modify tests to include external vm options without any risk of bumping into conflict and extend area of test applicability.

But if you still believe, that @requires is not necessary - it's not a problem, tests could be kept as is.

Thanks,
Dima


On 06.11.2014 16:27, Yekaterina Kantserova wrote:

Hi Evgeniya,

As David has pointed out these jps tests are not testing gc. The -XX:+UseParallelGC is just an arbitrary chosen test flag. There should not be any conflicts either since these tests are running in driver mode:

...
 * @run driver TestJpsJar
...

which means no flags from above are accepted.

Thanks,
Katja



On 11/06/2014 11:05 AM, Evgeniya Stepanova wrote:
Hi David,

tag added because tests contain string
 cmd.addAll(JpsHelper.getVmArgs());

and JpsHelper defines
...
public static final String[] VM_ARGS = {"-Xmx512m", "-XX:+UseParallelGC"};
...
public static List<String> getVmArgs() throws IOException {
        if (testVmArgs == null) {
            testVmArgs = new ArrayList<>();
testVmArgs.addAll(Arrays.asList(VM_ARGS));
testVmArgs.add("-XX:Flags=" + getVmFlagsFile().getAbsolutePath());
        }
        return testVmArgs;
    }

Tests itself wouldn't fail if we use another GC, tag added for cleanup-if we use for example SerialGC we must be sure that tests passed with this GC, not with another one. Now you will assume that concrete test passed with Serial GC, but it run only with Parallel GC. Plus there is no any sense to run test twice in TC (with different GC, since it use only Parallel)

Thanks,
Evgeniya Stepanova
On 06.11.2014 6:20, David Holmes wrote:
Hi Evgeniya,

On 6/11/2014 1:33 AM, Evgeniya Stepanova wrote:
Hi,

Please review changes for 8062536, the OpenJDK/jdk part of the JDK-8019361

bug: https://bugs.openjdk.java.net/browse/JDK-8062536
fix: http://cr.openjdk.java.net/~eistepan/8062536/webrev.00/

Problem: Some tests explicitly set GC and fail when another GC is set
outside

I don't see why you have done this for the

test/sun/tools/jps/TestJps*.java

tests. They don't set any GC flags.

Solution: Such tests marked with the jtreg tag "requires" to skip test
if there is a conflict

Just wondering: Does a skipped test get a .jtr file showing it was skipped; or does it only appear in the higher-level jtreg log?

Thanks,
David

Tested locally with different GC flags (-XX:+UseG1GC,
-XX:+UseParallelGC, -XX:+UseSerialGC, -XX:+UseConcMarkSweep and without
any GC flag). Tests are being excluded as expected. No tests failed
because of the conflict.

Thanks,
Evgeniya Stepanova

//

--
/Evgeniya Stepanova/






--
/Evgeniya Stepanova/


--
/Evgeniya Stepanova/

Reply via email to