RFR: JDK-8220295: sun/tools/jps/TestJps.java still timing out
Gary Adams
gary.adams at oracle.com
Wed Mar 20 12:26:51 UTC 2019
I think I have found the source of the dash.
sun/tools/jstat/RowClosure.java
sets the NaN value to "-".
That should be fine.
It just means in the jstat output tests need to account for the possibility.
...
On 3/19/19, 6:07 PM, Chris Plummer wrote:
> The presence of the '-' sounds familiar. I recall reading about it in
> a review. I know I did a review for these tests that impacted the
> output, but I don't see it introducing a '-' anywhere. See
> JDK-8202466. However, that bug references JDK-8199519, which caused
> problems by changing a value in the output from a '-' to a 0:
>
> --- a/test/hotspot/jtreg/serviceability/tmtools/jstat/utils/JstatGcCauseResults.java Wed Apr 25 17:50:32 2018 -0400
> +++ b/test/hotspot/jtreg/serviceability/tmtools/jstat/utils/JstatGcCauseResults.java Thu Apr 26 09:45:47 2018 +0900
> @@ -74,10 +74,18 @@
> assertThat(GCT>= 0, "Incorrect time value for GCT");
> assertThat(GCT>= YGCT, "GCT< YGCT (total garbage collection time< young generation garbage collection time)");
>
> - int CGC = getIntValue("CGC");
> - float CGCT = getFloatValue("CGCT");
> - assertThat(CGCT>= 0, "Incorrect time value for CGCT");
> + int CGC = 0;
> + float CGCT = 0.0f;
> + try {
> + CGC = getIntValue("CGC");
> + } catch (NumberFormatException e) {
> + if (!e.getMessage().equals("Unparseable number: \"-\"")) {
> + throw e;
> + }
> + }
> if (CGC> 0) {
> + CGCT = getFloatValue("CGCT");
> + assertThat(CGCT>= 0, "Incorrect time value for CGCT");
> assertThat(CGCT> 0, "Number of concurrent GC events is " + CGC + ", but CGCT is 0");
> }
>
> I'm not sure if any of this is related to what you are seeing.
>
> Chris
>
> On 3/19/19 11:39 AM, Gary Adams wrote:
>> A quick follow up on the jstat test failures.
>>
>> On the failed runs the output looks like this :
>>
>> ----------messages:(3/127)----------
>> command: shell jstatLineCounts4.sh
>> reason: User specified action: run shell jstatLineCounts4.sh
>> elapsed time (seconds): 7.496
>> ----------System.out:(13/1261)----------
>> S0 S1 E O M CCS YGC YGCT FGC FGCT CGC CGCT GCT
>> 0.00 0.00 0.00 0.00 - - 0 0.000 0 0.000 0 0.000 0.000
>> 0.00 0.00 0.00 0.00 - - 0 0.000 0 0.000 0 0.000 0.000
>> 0.00 0.00 0.00 0.00 - - 0 0.000 0 0.000 0 0.000 0.000
>> 0.00 0.00 0.00 0.00 - - 0 0.000 0 0.000 0 0.000 0.000
>> 0.00 0.00 0.00 0.00 - - 0 0.000 0 0.000 0 0.000 0.000
>> 0.00 0.00 0.00 0.00 - - 0 0.000 0 0.000 0 0.000 0.000
>> 0.00 0.00 0.00 0.00 - 28.19 1 0.571 0 0.000 0 0.000 0.571
>> 0.00 100.00 0.00 14.85 31.29 28.19 1 0.571 0 0.000 0 0.000 0.571
>> 0.00 100.00 0.00 14.85 31.29 28.19 1 0.571 0 0.000 0 0.000 0.571
>> 0.00 100.00 0.00 14.85 31.29 28.19 1 0.571 0 0.000 0 0.000 0.571
>> S0 S1 E O M CCS YGC YGCT FGC FGCT CGC CGCT GCT
>> 0.00 100.00 0.00 14.85 31.29 28.19 1 0.571 0 0.000 0 0.000 0.571
>>
>> The awk scripts used to check the output are not aware a dash '-' is
>> allowed the metaspace column.
>> Here is a quick stab to allow the dashes.
>> Is anyone aware of recent changes in the gcutil output?
>>
>> diff --git a/test/jdk/sun/tools/jstat/lineCounts3.awk
>> b/test/jdk/sun/tools/jstat/lineCounts3.awk
>> --- a/test/jdk/sun/tools/jstat/lineCounts3.awk
>> +++ b/test/jdk/sun/tools/jstat/lineCounts3.awk
>> @@ -23,7 +23,7 @@
>> headerlines++;
>> }
>>
>> -/^[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[
>> ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*([0-9]+\.[0-9]+)|-[ ]*[0-9]+[
>> ]*[0-9]+\.[0-9]+[ ]*[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+[
>> ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+$/ {
>> +/^[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[
>> ]*[0-9]+\.[0-9]+[ ]*([0-9]+\.[0-9]+)|-[ ]*([0-9]+\.[0-9]+)|-[
>> ]*[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+[
>> ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+$/ {
>> datalines++;
>> }
>>
>> diff --git a/test/jdk/sun/tools/jstat/lineCounts4.awk
>> b/test/jdk/sun/tools/jstat/lineCounts4.awk
>> --- a/test/jdk/sun/tools/jstat/lineCounts4.awk
>> +++ b/test/jdk/sun/tools/jstat/lineCounts4.awk
>> @@ -26,7 +26,7 @@
>> headerlines++;
>> }
>>
>> -/^[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[
>> ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*([0-9]+\.[0-9]+)|-[ ]*[0-9]+[
>> ]*[0-9]+\.[0-9]+[ ]*[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+[
>> ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+$/ {
>> +/^[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[
>> ]*[0-9]+\.[0-9]+[ ]*([0-9]+\.[0-9]+)|-[ ]*([0-9]+\.[0-9]+)|-[
>> ]*[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+[
>> ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+$/ {
>> if (headerlines == 2) {
>> datalines2++;
>> }
>>
>>
>> On 3/19/19, 8:22 AM, Gary Adams wrote:
>>> After 1000 testruns on {solaris,linux,windows,macosx} debug builds
>>> running
>>> test/jdk/sun/tools
>>> test/jdk/com/sun/tools/attach
>>>
>>> with this change, no failures were observed in TestJps or TempDirTest.
>>>
>>> diff --git a/test/jdk/TEST.ROOT b/test/jdk/TEST.ROOT
>>> --- a/test/jdk/TEST.ROOT
>>> +++ b/test/jdk/TEST.ROOT
>>> @@ -22,7 +22,11 @@
>>> javax/management sun/awt sun/java2d
>>> javax/xml/jaxp/testng/validation java/lang/ProcessHandle
>>>
>>> # Tests that cannot run concurrently
>>> -exclusiveAccess.dirs=java/rmi/Naming java/util/prefs
>>> sun/management/jmxremote sun/tools/jstatd sun/security/mscapi
>>> java/util/stream java/util/Arrays/largeMemory
>>> java/util/BitSet/stream javax/rmi
>>> +exclusiveAccess.dirs=java/rmi/Naming java/util/prefs
>>> sun/management/jmxremote \
>>> +sun/tools/jstatd sun/tools/jcmd sun/tools/jhsdb
>>> sun/tools/jhsdb/heapconfig \
>>> +sun/tools/jinfo sun/tools/jmap sun/tools/jps sun/tools/jstack
>>> sun/tools/jstat \
>>> +com/sun/tools/attach sun/security/mscapi java/util/stream
>>> java/util/Arrays/largeMemory \
>>> +java/util/BitSet/stream javax/rmi
>>> # Group definitions
>>> groups=TEST.groups
>>>
>>> Failures were observed in the following tests.
>>> sun/tools/jstat/jstatLineCounts4.sh,[],[solaris-sparcv9-debug],[ExitCode:
>>> 1],[bug4990825 shell], [jstatLineCounts4.sh],[37605],[]
>>> sun/tools/jstat/jstatLineCounts4.sh,[],[solaris-sparcv9-debug],[ExitCode:
>>> 1],[bug4990825 shell], [jstatLineCounts4.sh],[37605],[]
>>> sun/tools/jstat/jstatLineCounts3.sh
>>> sun/tools/jstat/jstatLineCounts4.sh,[],[solaris-sparcv9-debug],[ExitCode:
>>> 1],[bug4990825 shell], [jstatLineCounts4.sh],[37605],[]
>>> sun/tools/jstat/jstatLineCounts4.sh,[],[solaris-sparcv9-debug],[ExitCode:
>>> 1],[bug4990825 shell], [jstatLineCounts4.sh],[37605],[]
>>> sun/tools/jstat/jstatLineCounts4.sh
>>> sun/tools/jstatd/TestJstatdDefaults.java
>>> sun/tools/jstatd/TestJstatdServer.java
>>> sun/tools/jstatd/TestJstatdPort.java
>>> sun/tools/jstatd/TestJstatdExternalRegistry.java
>>>
>>> I'll investigate those failures some more, but I don't think they are
>>> related to the change to exclusiveAccess.dirs.
>>>
>>> Issues:
>>> https://bugs.openjdk.java.net/browse/JDK-8220295
>>> https://bugs.openjdk.java.net/browse/JDK-8220242
>>>
>>> At this point just looking for feedback, if this is a reasonable
>>> direction
>>> to deal with the intermittent timeouts with theses tests to reduce the
>>> concurrency with other attaching tests.
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/serviceability-dev/attachments/20190320/9b6611b5/attachment-0001.html>
More information about the serviceability-dev
mailing list