[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-serviceability-dev
Subject:    Re: RFR: 8199519: Several GC tests fails with: java.lang.NumberFormatException: Unparseable number: 
From:       Stefan Johansson <stefan.johansson () oracle ! com>
Date:       2018-03-28 13:38:01
Message-ID: 5c1975cd-1080-652e-c23a-abd693cc0095 () oracle ! com
[Download RAW message or body]

Mach5 testing looks good.

Can someone in the serviceability team do the second review?

Cheers,
Stefan

On 2018-03-28 13:32, Yasumasa Suenaga wrote:
> Thanks Stefan,
> I'm waiting for second reviewer.
>
>
> Yasumasa
>
>
> 2018年3月28日(水) 18:36 Stefan Johansson <stefan.johansson@oracle.com 
> <mailto:stefan.johansson@oracle.com>>:
>
>     Hi Yasumasa,
>
>     Local testing looks good and I've kicked of some additional Mach5
>     testing that will include these tests on all platforms.
>
>     Cheers,
>     Stefan
>
>     On 2018-03-28 06:04, Yasumasa Suenaga wrote:
>     > Hi Stefan,
>     >
>     > Thank you for sharing your report!
>     > I could reproduce them on my VM.
>     >
>     > I've fixed them in new webrev, and it works fine on my environment.
>     > Could you check again?
>     >
>     > http://cr.openjdk.java.net/~ysuenaga/JDK-8199519/webrev.03/
>     <http://cr.openjdk.java.net/%7Eysuenaga/JDK-8199519/webrev.03/>
>     >
>     >
>     > Thanks,
>     >
>     > Yasumasa
>     >
>     >
>     >
>     > 2018-03-28 0:29 GMT+09:00 Stefan Johansson
>     <stefan.johansson@oracle.com <mailto:stefan.johansson@oracle.com>>:
>     >>
>     >> On 2018-03-27 16:44, Yasumasa Suenaga wrote:
>     >>> Hi Stefan,
>     >>>
>     >>> On 2018/03/27 22:45, Stefan Johansson wrote:
>     >>>> Hi Yasumasa,
>     >>>>
>     >>>> On 2018-03-27 10:56, Yasumasa Suenaga wrote:
>     >>>>> Hi Stefan,
>     >>>>>
>     >>>>> Thank you for your comment.
>     >>>>> I updated webrev:
>     >>>>>
>     >>>>>        webrev:
>     http://cr.openjdk.java.net/~ysuenaga/JDK-8199519/webrev.01/
>     <http://cr.openjdk.java.net/%7Eysuenaga/JDK-8199519/webrev.01/>
>     >>>> I think the usage of Optional in Expression.setRequired(bool)
>     is a bit
>     >>>> unnecessary. It will create temporary objects and there is no
>     benefit from
>     >>>> just doing two simple if-statements.
>     >>>
>     >>> I fixed it in new webrev:
>     >>> http://cr.openjdk.java.net/~ysuenaga/JDK-8199519/webrev.02/
>     <http://cr.openjdk.java.net/%7Eysuenaga/JDK-8199519/webrev.02/>
>     >>>
>     >>>
>     >>>> I also ran this patch (and the one using forcibly) on my
>     single core VM
>     >>>> and realized that this fix will have to include some awk-file
>     updates to
>     >>>> make the test in test/jdk/sun/tools/jstat pass when Serial in
>     chosen as the
>     >>>> default collector. The tests in test/jdk/sun/tools/jstatd/
>     are fine.
>     >>>
>     >>> Can you share the failure report?
>     >> It relates to all tests that display the the CGC and the CGCT
>     columns, for
>     >> example in jstatGCOutput1.sh:
>     >>     S0C      S1C      S0U      S1U         EC           EU OC   OU           MC        MU
>     >> CCSC     CCSU     YGC        YGCT FGC      FGCT      CGC CGCT        GCT
>     >> 256.0   256.0   254.0     0.0      2176.0     1025.0 5504.0 920.5      7168.0
>     >> 6839.7 768.0   602.8           2      0.007     0 0.000     -          -      0.007
>     >>
>     >> The awk regex needs to be updated to handle '-' for these tests:
>     >> test: sun/tools/jstat/jstatGcCapacityOutput1.sh
>     >> Failed. Execution failed: exit code 1
>     >>
>     >> test: sun/tools/jstat/jstatGcMetaCapacityOutput1.sh
>     >> Failed. Execution failed: exit code 1
>     >>
>     >> test: sun/tools/jstat/jstatGcNewCapacityOutput1.sh
>     >> Failed. Execution failed: exit code 1
>     >>
>     >> test: sun/tools/jstat/jstatGcOldCapacityOutput1.sh
>     >> Failed. Execution failed: exit code 1
>     >>
>     >> test: sun/tools/jstat/jstatGcOldOutput1.sh
>     >> Failed. Execution failed: exit code 1
>     >>
>     >> test: sun/tools/jstat/jstatGcOutput1.sh
>     >> Failed. Execution failed: exit code 1
>     >>
>     >>
>     >>> If it occurs in jstatClassloadOutput1.sh, it relates to
>     JDK-8173942.
>     >>>
>     >>>
>     >>> Thanks,
>     >>>
>     >>> Yasumasa
>     >>>
>     >>>
>     >>>> Thanks,
>     >>>> Stefan
>     >>>>>        submit-hs:
>     mach5-one-ysuenaga-JDK-8199519-20180327-0652-16322
>     >>>>>
>     >>>>>
>     >>>>> Thanks,
>     >>>>>
>     >>>>> Yasumasa
>     >>>>>
>     >>>>>
>     >>>>>
>     >>>>> 2018-03-27 0:03 GMT+09:00 Stefan Johansson
>     >>>>> <stefan.johansson@oracle.com
>     <mailto:stefan.johansson@oracle.com>>:
>     >>>>>> Hi Yasumasa,
>     >>>>>>
>     >>>>>> On 2018-03-22 11:35, Yasumasa Suenaga wrote:
>     >>>>>>> Hi all,
>     >>>>>>>
>     >>>>>>> Please review this change:
>     >>>>>>>
>     >>>>>>>         JBS: https://bugs.openjdk.java.net/browse/JDK-8199519
>     >>>>>>> webrev:
>     cr.openjdk.java.net/~ysuenaga/JDK-8199519/webrev.00/
>     <http://cr.openjdk.java.net/%7Eysuenaga/JDK-8199519/webrev.00/>
>     >>>>>> The fix seems to make things to work as expected. Manually
>     tested it
>     >>>>>> and
>     >>>>>> Mach5 also looks good.
>     >>>>>>
>     >>>>>> I have some comments regarding the patch. I think
>     'forcibly' should be
>     >>>>>> rename to something more descriptive. Naming is never easy
>     but I think
>     >>>>>> 'required' would be better, as in, this column is required
>     and not
>     >>>>>> allowed
>     >>>>>> to print '-'. That would also render the code in
>     >>>>>> ExpressionResolver.java to
>     >>>>>> be:
>     >>>>>>        return new Literal(isRequired ? 0.0d : Double.NaN);
>     >>>>>> I think that also better explains why we return 0 instead
>     of NaN.
>     >>>>>>
>     >>>>>> I would also like to see the forcibly/required state moved
>     into the
>     >>>>>> Expression it self, that way we don't have to pass it
>     around but can
>     >>>>>> instead
>     >>>>>> do:
>     >>>>>>        return new Literal(e.isRequired() ? 0.0d : Double.NaN);
>     >>>>>>
>     >>>>>> Thanks,
>     >>>>>> Stefan
>     >>>>>>
>     >>>>>>
>     >>>>>>> After JDK-8153333, some jstat tests are failed because GCT
>     in jstat
>     >>>>>>> output
>     >>>>>>> is dash (-) if garbage collector is not concurrent
>     collector e.g.
>     >>>>>>> Serial GC.
>     >>>>>>> I fixed that GCT can be calculated correctly.
>     >>>>>>>
>     >>>>>>> This change has been tested on Mach5 by Stefan.
>     >>>>>>>
>     >>>>>>>
>     >>>>>>> Thanks,
>     >>>>>>>
>     >>>>>>> Yasumasa
>     >>>>>>
>


[Attachment #3 (text/html)]

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <tt>Mach5 testing looks good.<br>
      <br>
      Can someone in the serviceability team do the second review? <br>
      <br>
      Cheers,<br>
      Stefan<br>
    </tt><br>
    <div class="moz-cite-prefix">On 2018-03-28 13:32, Yasumasa Suenaga
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAGFVN2BvFBDo_BfhgDN0Q4JW+2d6VsL2+6MWTKK_ChT9we9FAw@mail.gmail.com">
      <div dir="auto">Thanks Stefan,
        <div dir="auto">I'm waiting for second reviewer.</div>
        <div dir="auto"><br>
        </div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">Yasumasa</div>
        <div dir="auto"><br>
        </div>
      </div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr">2018年3月28日(水) 18:36 Stefan Johansson &lt;<a
            href="mailto:stefan.johansson@oracle.com"
            moz-do-not-send="true">stefan.johansson@oracle.com</a>&gt;:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0 0 0
          .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Yasumasa,<br>
          <br>
          Local testing looks good and I've kicked of some additional
          Mach5<br>
          testing that will include these tests on all platforms.<br>
          <br>
          Cheers,<br>
          Stefan<br>
          <br>
          On 2018-03-28 06:04, Yasumasa Suenaga wrote:<br>
          &gt; Hi Stefan,<br>
          &gt;<br>
          &gt; Thank you for sharing your report!<br>
          &gt; I could reproduce them on my VM.<br>
          &gt;<br>
          &gt; I've fixed them in new webrev, and it works fine on my
          environment.<br>
          &gt; Could you check again?<br>
          &gt;<br>
          &gt;      <a
            href="http://cr.openjdk.java.net/%7Eysuenaga/JDK-8199519/webrev.03/"
            rel="noreferrer noreferrer" target="_blank"
            moz-do-not-send="true">http://cr.openjdk.java.net/~ysuenaga/JDK-8199519/webrev.03/</a><br>
          &gt;<br>
          &gt;<br>
          &gt; Thanks,<br>
          &gt;<br>
          &gt; Yasumasa<br>
          &gt;<br>
          &gt;<br>
          &gt;<br>
          &gt; 2018-03-28 0:29 GMT+09:00 Stefan Johansson &lt;<a
            href="mailto:stefan.johansson@oracle.com" target="_blank"
            rel="noreferrer" moz-do-not-send="true">stefan.johansson@oracle.com</a>&gt;:<br>
          &gt;&gt;<br>
          &gt;&gt; On 2018-03-27 16:44, Yasumasa Suenaga wrote:<br>
          &gt;&gt;&gt; Hi Stefan,<br>
          &gt;&gt;&gt;<br>
          &gt;&gt;&gt; On 2018/03/27 22:45, Stefan Johansson wrote:<br>
          &gt;&gt;&gt;&gt; Hi Yasumasa,<br>
          &gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt; On 2018-03-27 10:56, Yasumasa Suenaga wrote:<br>
          &gt;&gt;&gt;&gt;&gt; Hi Stefan,<br>
          &gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt; Thank you for your comment.<br>
          &gt;&gt;&gt;&gt;&gt; I updated webrev:<br>
          &gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;        webrev: <a
            href="http://cr.openjdk.java.net/%7Eysuenaga/JDK-8199519/webrev.01/"
            rel="noreferrer noreferrer" target="_blank"
            moz-do-not-send="true">http://cr.openjdk.java.net/~ysuenaga/JDK-8199519/webrev.01/</a><br>
          &gt;&gt;&gt;&gt; I think the usage of Optional in
          Expression.setRequired(bool) is a bit<br>
          &gt;&gt;&gt;&gt; unnecessary. It will create temporary objects
          and there is no benefit from<br>
          &gt;&gt;&gt;&gt; just doing two simple if-statements.<br>
          &gt;&gt;&gt;<br>
          &gt;&gt;&gt; I fixed it in new webrev:<br>
          &gt;&gt;&gt;      <a
            href="http://cr.openjdk.java.net/%7Eysuenaga/JDK-8199519/webrev.02/"
            rel="noreferrer noreferrer" target="_blank"
            moz-do-not-send="true">http://cr.openjdk.java.net/~ysuenaga/JDK-8199519/webrev.02/</a><br>
          &gt;&gt;&gt;<br>
          &gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt; I also ran this patch (and the one using
          forcibly) on my single core VM<br>
          &gt;&gt;&gt;&gt; and realized that this fix will have to
          include some awk-file updates to<br>
          &gt;&gt;&gt;&gt; make the test in test/jdk/sun/tools/jstat
          pass when Serial in chosen as the<br>
          &gt;&gt;&gt;&gt; default collector. The tests in
          test/jdk/sun/tools/jstatd/ are fine.<br>
          &gt;&gt;&gt;<br>
          &gt;&gt;&gt; Can you share the failure report?<br>
          &gt;&gt; It relates to all tests that display the the CGC and
          the CGCT columns, for<br>
          &gt;&gt; example in jstatGCOutput1.sh:<br>
          &gt;&gt;     S0C      S1C      S0U      S1U         EC           EU OC           
            OU           MC        MU<br>
          &gt;&gt; CCSC     CCSU     YGC        YGCT FGC      FGCT      CGC     
          CGCT        GCT<br>
          &gt;&gt; 256.0   256.0   254.0     0.0      2176.0     1025.0     
          5504.0 920.5      7168.0<br>
          &gt;&gt; 6839.7 768.0   602.8           2      0.007     0 0.000     -     
                   -      0.007<br>
          &gt;&gt;<br>
          &gt;&gt; The awk regex needs to be updated to handle '-' for
          these tests:<br>
          &gt;&gt; test: sun/tools/jstat/jstatGcCapacityOutput1.sh<br>
          &gt;&gt; Failed. Execution failed: exit code 1<br>
          &gt;&gt;<br>
          &gt;&gt; test: sun/tools/jstat/jstatGcMetaCapacityOutput1.sh<br>
          &gt;&gt; Failed. Execution failed: exit code 1<br>
          &gt;&gt;<br>
          &gt;&gt; test: sun/tools/jstat/jstatGcNewCapacityOutput1.sh<br>
          &gt;&gt; Failed. Execution failed: exit code 1<br>
          &gt;&gt;<br>
          &gt;&gt; test: sun/tools/jstat/jstatGcOldCapacityOutput1.sh<br>
          &gt;&gt; Failed. Execution failed: exit code 1<br>
          &gt;&gt;<br>
          &gt;&gt; test: sun/tools/jstat/jstatGcOldOutput1.sh<br>
          &gt;&gt; Failed. Execution failed: exit code 1<br>
          &gt;&gt;<br>
          &gt;&gt; test: sun/tools/jstat/jstatGcOutput1.sh<br>
          &gt;&gt; Failed. Execution failed: exit code 1<br>
          &gt;&gt;<br>
          &gt;&gt;<br>
          &gt;&gt;&gt; If it occurs in jstatClassloadOutput1.sh, it
          relates to JDK-8173942.<br>
          &gt;&gt;&gt;<br>
          &gt;&gt;&gt;<br>
          &gt;&gt;&gt; Thanks,<br>
          &gt;&gt;&gt;<br>
          &gt;&gt;&gt; Yasumasa<br>
          &gt;&gt;&gt;<br>
          &gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt; Thanks,<br>
          &gt;&gt;&gt;&gt; Stefan<br>
          &gt;&gt;&gt;&gt;&gt;        submit-hs:
          mach5-one-ysuenaga-JDK-8199519-20180327-0652-16322<br>
          &gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt; Thanks,<br>
          &gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt; Yasumasa<br>
          &gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt; 2018-03-27 0:03 GMT+09:00 Stefan
          Johansson<br>
          &gt;&gt;&gt;&gt;&gt; &lt;<a
            href="mailto:stefan.johansson@oracle.com" target="_blank"
            rel="noreferrer" moz-do-not-send="true">stefan.johansson@oracle.com</a>&gt;:<br>
          &gt;&gt;&gt;&gt;&gt;&gt; Hi Yasumasa,<br>
          &gt;&gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;&gt; On 2018-03-22 11:35, Yasumasa Suenaga
          wrote:<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt; Hi all,<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt; Please review this change:<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt;         JBS: <a
            href="https://bugs.openjdk.java.net/browse/JDK-8199519"
            rel="noreferrer noreferrer" target="_blank"
            moz-do-not-send="true">https://bugs.openjdk.java.net/browse/JDK-8199519</a><br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt; webrev: <a
            href="http://cr.openjdk.java.net/%7Eysuenaga/JDK-8199519/webrev.00/"
            rel="noreferrer noreferrer" target="_blank"
            moz-do-not-send="true">cr.openjdk.java.net/~ysuenaga/JDK-8199519/webrev.00/</a><br>
          &gt;&gt;&gt;&gt;&gt;&gt; The fix seems to make things to work
          as expected. Manually tested it<br>
          &gt;&gt;&gt;&gt;&gt;&gt; and<br>
          &gt;&gt;&gt;&gt;&gt;&gt; Mach5 also looks good.<br>
          &gt;&gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;&gt; I have some comments regarding the
          patch. I think 'forcibly' should be<br>
          &gt;&gt;&gt;&gt;&gt;&gt; rename to something more descriptive.
          Naming is never easy but I think<br>
          &gt;&gt;&gt;&gt;&gt;&gt; 'required' would be better, as in,
          this column is required and not<br>
          &gt;&gt;&gt;&gt;&gt;&gt; allowed<br>
          &gt;&gt;&gt;&gt;&gt;&gt; to print '-'. That would also render
          the code in<br>
          &gt;&gt;&gt;&gt;&gt;&gt; ExpressionResolver.java to<br>
          &gt;&gt;&gt;&gt;&gt;&gt; be:<br>
          &gt;&gt;&gt;&gt;&gt;&gt;        return new Literal(isRequired ?
          0.0d : Double.NaN);<br>
          &gt;&gt;&gt;&gt;&gt;&gt; I think that also better explains why
          we return 0 instead of NaN.<br>
          &gt;&gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;&gt; I would also like to see the
          forcibly/required state moved into the<br>
          &gt;&gt;&gt;&gt;&gt;&gt; Expression it self, that way we don't
          have to pass it around but can<br>
          &gt;&gt;&gt;&gt;&gt;&gt; instead<br>
          &gt;&gt;&gt;&gt;&gt;&gt; do:<br>
          &gt;&gt;&gt;&gt;&gt;&gt;        return new Literal(e.isRequired()
          ? 0.0d : Double.NaN);<br>
          &gt;&gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;&gt; Thanks,<br>
          &gt;&gt;&gt;&gt;&gt;&gt; Stefan<br>
          &gt;&gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt; After JDK-8153333, some jstat
          tests are failed because GCT in jstat<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt; output<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt; is dash (-) if garbage collector
          is not concurrent collector e.g.<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt; Serial GC.<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt; I fixed that GCT can be
          calculated correctly.<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt; This change has been tested on
          Mach5 by Stefan.<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt; Thanks,<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
          &gt;&gt;&gt;&gt;&gt;&gt;&gt; Yasumasa<br>
          &gt;&gt;&gt;&gt;&gt;&gt;<br>
          <br>
        </blockquote>
      </div>
    </blockquote>
    <br>
  </body>
</html>


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic