<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <br>
    <div class="moz-cite-prefix">On 2014-11-12 16:21, Evgeniya Stepanova
      wrote:<br>
    </div>
    <blockquote cite="mid:54637AF5.9080600@oracle.com" type="cite">
      <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
      Hi everyone!<br>
      <br>
      Since the decision was made to change only tests which fail
      because of conflict for now (skip "selfish" tests), I post new
      webrev for jdk part of the <a moz-do-not-send="true" id="key-val"
        rel="4684019"
        href="https://bugs.openjdk.java.net/browse/JDK-8019361">JDK-8019361</a>:<br>
      <a moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://cr.openjdk.java.net/%7Eavstepan/eistepan/8062536/webrev.03/">http://cr.openjdk.java.net/~avstepan/eistepan/8062536/webrev.03/</a><br>
    </blockquote>
    <br>
    Thanks for updating the webrev!<br>
    <br>
    A couple of comments:<br>
    <br>
    MemoryTestAllGC.sh<br>
    <br>
    The test is run three times, once with no params, once with
    ParallelGC and once with CMS. So, I think the @requires should just
    be vm.gc == "null". Similarly to what was done for PendingAllGC.sh.<br>
    <br>
    <br>
    TestInputArgument.sh<br>
    <br>
    The changes here seem unrelated to @requires.<br>
    <br>
    <br>
    EnqueuePollRace.java<br>
    <br>
    Can you explain why it is safe to remove -XX:+UseSerialGC for this
    test?<br>
    <br>
    <br>
    JpsHelper.java<br>
    <br>
    Can you explain why it is safe to remvoe -XX:+UseParallelGC for this
    test?<br>
    <br>
    <br>
    When I use Aurora to check what tests that currently are considered
    known because of JDK-8019361 I get a pretty long list:<br>
    <br>
<a class="moz-txt-link-freetext" href="http://aurora.ru.oracle.com/functional/faces/CRRules.xhtml?cr=JDK-8019361">http://aurora.ru.oracle.com/functional/faces/CRRules.xhtml?cr=JDK-8019361</a><br>
    <br>
    Are the tests in webrev.03 the only tests that still fail? Have the
    others been fixed in other ways?<br>
    <br>
    Thanks,<br>
    Bengt<br>
    <br>
    <br>
    <br>
    <blockquote cite="mid:54637AF5.9080600@oracle.com" type="cite"> <br>
      Thanks,<br>
      Evgeniya Stepanova
      <div class="moz-cite-prefix">On 07.11.2014 15:34, Evgeniya
        Stepanova wrote:<br>
      </div>
      <blockquote cite="mid:545CAE30.9010708@oracle.com" type="cite">
        <meta content="text/html; charset=utf-8"
          http-equiv="Content-Type">
        David, Filipp, Katja<br>
        <br>
        Diff have been updated one more time:<br>
        java/lang/management/RuntimeMXBean/TestInputArgument.sh and
        test/java/lang/ref/EnqueuePollRace.java have been changed<br>
        <a moz-do-not-send="true" class="moz-txt-link-freetext"
          href="http://cr.openjdk.java.net/%7Eeistepan/8062536/webrev.02/">http://cr.openjdk.java.net/~eistepan/8062536/webrev.02/</a><br>
        <br>
        Thanks<br>
        <br>
        <div class="moz-cite-prefix">On 07.11.2014 9:37, David Holmes
          wrote:<br>
        </div>
        <blockquote cite="mid:545C5AB6.6030103@oracle.com" type="cite">On

          7/11/2014 12:36 AM, Evgeniya Stepanova wrote: <br>
          <blockquote type="cite">New webrev: <br>
            <a moz-do-not-send="true" class="moz-txt-link-freetext"
              href="http://cr.openjdk.java.net/%7Eeistepan/8062536/webrev.01/">http://cr.openjdk.java.net/~eistepan/8062536/webrev.01/</a>
            <br>
          </blockquote>
          <br>
          In: <br>
          <br>
          test/java/lang/management/RuntimeMXBean/TestInputArgument.sh <br>
          <br>
          the use of the gc options seems incidental - it's just picking
          two innocuous options to use - similar to the JpsHelper case.
          You could replace +UseParallelGC with something like
          +UseFastJNIAccessors (platform independent and normally true).
          <br>
          <br>
          David <br>
          ----- <br>
          <br>
          <blockquote type="cite">Thanks, <br>
            Evgeniya Stepanova <br>
            On 06.11.2014 17:35, Yekaterina Kantserova wrote: <br>
            <blockquote type="cite">Thanks a lot! <br>
              <br>
              On 11/06/2014 02:05 PM, Evgeniya Stepanova wrote: <br>
              <blockquote type="cite">Hi Katja, <br>
                <br>
                Ok, this seems to be a perfect solution. Thank you. I'll
                change the <br>
                diff accordingly. <br>
                <br>
                <br>
                Thanks, <br>
                Evgeniya Stepanova <br>
                On 06.11.2014 16:56, Yekaterina Kantserova wrote: <br>
                <blockquote type="cite">Hi Dima, <br>
                  <br>
                  On 11/06/2014 11:22 AM, Dmitry Fazunenko wrote: <br>
                  <blockquote type="cite">Hi Katja, <br>
                    <br>
                    You are right, there will be no conflict, because
                    test ignores any <br>
                    external VM flags. <br>
                    So, adding @requires seems unnecessary here, but...
                    <br>
                    <br>
                    Ignoring external options is bad thing, such
                    "selfish" tests are <br>
                    not applicable for other areas, like GC, compiler,
                    RT. <br>
                  </blockquote>
                  <br>
                  This particular case is to test the defined flags are
                  shown up as <br>
                  expected. <br>
                  <br>
                  Evgeniya, <br>
                  <br>
                  would you mind to change JpsHelper.java instead? <br>
                  <br>
                  +++ b/test/sun/tools/jps/JpsHelper.java <br>
                  @@ -93,7 +93,7 @@ <br>
                       /** <br>
                        * VM arguments to start test application with <br>
                        */ <br>
                  -    public static final String[] VM_ARGS =
                  {"-Xmx512m", <br>
                  "-XX:+UseParallelGC"}; <br>
                  +    public static final String[] VM_ARGS =
                  {"-Xmx512m", <br>
                  "-XX:+PrintGCDetails"}; <br>
                       /** <br>
                        * VM flag to start test application with <br>
                        */ <br>
                  <br>
                  Best regards, <br>
                  Katja <br>
                  <br>
                  <br>
                  <br>
                  <blockquote type="cite"> <br>
                    @requires  will allow to modify tests to include
                    external vm <br>
                    options without any risk of bumping into conflict
                    and extend area <br>
                    of test applicability. <br>
                    <br>
                    But if you still believe, that @requires is not
                    necessary - it's <br>
                    not a problem, tests could be kept as is. <br>
                    <br>
                    Thanks, <br>
                    Dima <br>
                    <br>
                    <br>
                    On 06.11.2014 16:27, Yekaterina Kantserova wrote: <br>
                    <blockquote type="cite"> <br>
                      Hi Evgeniya, <br>
                      <br>
                      As David has pointed out these jps tests are not
                      testing gc. The <br>
                      -XX:+UseParallelGC is just an arbitrary chosen
                      test flag. There <br>
                      should not be any conflicts either since these
                      tests are running <br>
                      in driver mode: <br>
                      <br>
                      ... <br>
                       * @run driver TestJpsJar <br>
                      ... <br>
                      <br>
                      which means no flags from above are accepted. <br>
                      <br>
                      Thanks, <br>
                      Katja <br>
                      <br>
                      <br>
                      <br>
                      On 11/06/2014 11:05 AM, Evgeniya Stepanova wrote:
                      <br>
                      <blockquote type="cite">Hi David, <br>
                        <br>
                        tag added because tests contain string <br>
                         cmd.addAll(JpsHelper.getVmArgs()); <br>
                        <br>
                        and JpsHelper defines <br>
                        ... <br>
                        public static final String[] VM_ARGS =
                        {"-Xmx512m", <br>
                        "-XX:+UseParallelGC"}; <br>
                        ... <br>
                        public static List<String> getVmArgs()
                        throws IOException { <br>
                                if (testVmArgs == null) { <br>
                                    testVmArgs = new
                        ArrayList<>(); <br>
                                   
                        testVmArgs.addAll(Arrays.asList(VM_ARGS)); <br>
                                    testVmArgs.add("-XX:Flags=" + <br>
                        getVmFlagsFile().getAbsolutePath()); <br>
                                } <br>
                                return testVmArgs; <br>
                            } <br>
                        <br>
                        Tests itself wouldn't fail if we use another GC,
                        tag added for <br>
                        cleanup-if we use for example SerialGC we must
                        be sure that tests <br>
                        passed with this GC, not with another one. Now
                        you will assume <br>
                        that concrete test passed with Serial GC, but it
                        run only with <br>
                        Parallel GC. Plus there is no any sense to run
                        test twice in TC <br>
                        (with different GC, since it use only Parallel)
                        <br>
                        <br>
                        Thanks, <br>
                        Evgeniya Stepanova <br>
                        On 06.11.2014 6:20, David Holmes wrote: <br>
                        <blockquote type="cite">Hi Evgeniya, <br>
                          <br>
                          On 6/11/2014 1:33 AM, Evgeniya Stepanova
                          wrote: <br>
                          <blockquote type="cite">Hi, <br>
                            <br>
                            Please review changes for 8062536, the
                            OpenJDK/jdk part of the <br>
                            JDK-8019361 <br>
                            <br>
                            bug: <a moz-do-not-send="true"
                              class="moz-txt-link-freetext"
                              href="https://bugs.openjdk.java.net/browse/JDK-8062536">https://bugs.openjdk.java.net/browse/JDK-8062536</a>
                            <br>
                            fix: <a moz-do-not-send="true"
                              class="moz-txt-link-freetext"
                              href="http://cr.openjdk.java.net/%7Eeistepan/8062536/webrev.00/">http://cr.openjdk.java.net/~eistepan/8062536/webrev.00/</a>
                            <br>
                            <br>
                            Problem: Some tests explicitly set GC and
                            fail when another GC <br>
                            is set <br>
                            outside <br>
                          </blockquote>
                          <br>
                          I don't see why you have done this for the <br>
                          <br>
                          test/sun/tools/jps/TestJps*.java <br>
                          <br>
                          tests. They don't set any GC flags. <br>
                          <br>
                          <blockquote type="cite">Solution: Such tests
                            marked with the jtreg tag "requires" to <br>
                            skip test <br>
                            if there is a conflict <br>
                          </blockquote>
                          <br>
                          Just wondering: Does a skipped test get a .jtr
                          file showing it <br>
                          was skipped; or does it only appear in the
                          higher-level jtreg log? <br>
                          <br>
                          Thanks, <br>
                          David <br>
                          <br>
                          <blockquote type="cite">Tested locally with
                            different GC flags (-XX:+UseG1GC, <br>
                            -XX:+UseParallelGC, -XX:+UseSerialGC,
                            -XX:+UseConcMarkSweep and <br>
                            without <br>
                            any GC flag). Tests are being excluded as
                            expected. No tests <br>
                            failed <br>
                            because of the conflict. <br>
                            <br>
                            Thanks, <br>
                            Evgeniya Stepanova <br>
                            <br>
                            // <br>
                          </blockquote>
                        </blockquote>
                        <br>
                        -- <br>
                        /Evgeniya Stepanova/ <br>
                      </blockquote>
                      <br>
                      <br>
                      <br>
                    </blockquote>
                    <br>
                  </blockquote>
                  <br>
                </blockquote>
                <br>
                -- <br>
                /Evgeniya Stepanova/ <br>
              </blockquote>
              <br>
            </blockquote>
            <br>
            -- <br>
            /Evgeniya Stepanova/ <br>
          </blockquote>
        </blockquote>
        <br>
        <div class="moz-signature">-- <br>
          <i>Evgeniya Stepanova</i></div>
      </blockquote>
      <br>
      <div class="moz-signature">-- <br>
        <i>Evgeniya Stepanova</i></div>
    </blockquote>
    <br>
  </body>
</html>