Jtreg build is failing
Stuart Monteith
stuart.monteith at linaro.org
Mon Jun 26 15:45:29 UTC 2017
Hi Jonathan,
The testcases were failing as they were trying to match the TZ
against the expected value and failing. The tests don't seem to be
clever enough to exclude tests if their version particular JDK
environment variable is unset. It puts us in an awkward position, as
not every platform has a port for the tested versions - on AArch64
there hasn't been JDK6 release.
BR,
Stuart
On 22 June 2017 at 15:35, Jonathan Gibbons <jonathan.gibbons at oracle.com> wrote:
> Thanks for the followup.
>
> Do you know why you had to unset TZ?
>
> You should not need the settings for older JDKs unless you are running the
> tests, and there are some tests that may require the JDKs to be distinct, so
> you may get test failures if you set the locations for older JDKs to
> unexpected values.
>
> -- Jon
>
>
>
> On 6/22/17 6:46 AM, Stuart Monteith wrote:
>>
>> Thanks Jonathan,
>> I had misplaced jcommander between the build and the test.
>>
>> There are some issues setting up the environment, so far I have to do
>> the following:
>>
>> export LANG=en_US.UTF-8
>> unset TZ
>> export J2SEHOME=$JDK17HOME
>> export JDK18HOME=$JDK17HOME
>> export JDK16HOME=$JDK18HOME
>>
>> But I think we're mostly good now.
>>
>> BR,
>> Stuart
>>
>> On 21 June 2017 at 18:25, Jonathan Gibbons <jonathan.gibbons at oracle.com>
>> wrote:
>>>
>>> Stuart,
>>>
>>> I've not dug all the way down to the root cause of your issue, but I can
>>> confirm that the primary significant different between your test results
>>> in
>>> the Basic.othervm tests and the test results I have locally (which pass)
>>> is
>>> related to the JCommander library.
>>>
>>> The following lines at the end of Basic.othervm/report/text/summary.txt
>>> seem
>>> to be the appropriate ones to look at:
>>>
>>> testng/group/p/q/ExtraComment.java Failed. Execution failed: `main'
>>> threw
>>> exception: java.lang.NoClassDefFoundError:
>>> com/beust/jcommander/ParameterException
>>> testng/group/p/q/ExtraComment.java#1 Error. Multiple test descriptions
>>> not
>>> allowed
>>> testng/group/p/q/Fail.java Failed. Execution failed: `main'
>>> threw
>>> exception: java.lang.NoClassDefFoundError:
>>> com/beust/jcommander/ParameterException
>>> testng/group/p/q/Pass.java Failed. Execution failed: `main'
>>> threw
>>> exception: java.lang.NoClassDefFoundError:
>>> com/beust/jcommander/ParameterException
>>> testng/singles/Fail.java Failed. Execution failed: `main'
>>> threw
>>> exception: java.lang.NoClassDefFoundError:
>>> com/beust/jcommander/ParameterException
>>> testng/singles/Pass.java Failed. Execution failed: `main'
>>> threw
>>> exception: java.lang.NoClassDefFoundError:
>>> com/beust/jcommander/ParameterException
>>>
>>> You can ignore the second line ... that is intentional ... the Basic*
>>> tests
>>> have many intentional errors, as part of testing jtreg's ability to
>>> correctly detect errors. But the messages about not finding
>>> ParameterException are significant.
>>>
>>> -- Jon
>>>
>>>
>>>
>>> On 06/21/2017 10:00 AM, Stuart Monteith wrote:
>>>>
>>>> The versions are (the ones I'm using, then the recommended versions
>>>> from the README, then from the website):
>>>> asmtools-6.0 - ? - 6.0 or better
>>>> jtharness-5.0 - 4.1.3 - jtharness 4.6 or better
>>>> junit-4.8.2 - junit 4 - JUnit 4.1.0
>>>> testng-6.9.5 - ? - 6.9.5
>>>> jcommander-1.48 - ? - ?
>>>> javahelp-2.0.05 - 2.0_01 - e.g. javahelp2.0_05.zip
>>>>
>>>> There are some disparities. I've not investigated much to see why they
>>>> are failing.
>>>>
>>>> I've put the build files here:
>>>>
>>>>
>>>>
>>>> http://people.linaro.org/~stuart.monteith/jtreg-build/Basic.othervm/report/
>>>> you can look around from here:
>>>> http://people.linaro.org/~stuart.monteith/jtreg-build/
>>>>
>>>> Thanks,
>>>> Stuart
>>>>
>>>> On 21 June 2017 at 17:29, Jonathan Gibbons <jonathan.gibbons at oracle.com>
>>>> wrote:
>>>>>
>>>>> Stuart,
>>>>>
>>>>> Your fix for the HelpTree problem looks like the fix I would
>>>>> anticipate.
>>>>> I'll try it out locally and run the tests.
>>>>>
>>>>> You don't give enough info for me to diagnose why the tests are not
>>>>> running for you. Are you using the recommended version of other
>>>>> libraries,
>>>>> and not necessarily the latest version? (i.e. the version we recommend
>>>>> for
>>>>> use with jtreg)
>>>>>
>>>>> Some other folk are looking at making the overall jtreg build easier to
>>>>> configure.
>>>>> That work is ongoing.
>>>>>
>>>>> -- Jon
>>>>>
>>>>>
>>>>> On 06/21/2017 09:11 AM, Stuart Monteith wrote:
>>>>>>
>>>>>> Ok, I'm not seeing any better test results with the old jtharness.jar
>>>>>> version.
>>>>>>
>>>>>> Also, "f.set(commandHelpTree, new NodeComparator()) " should be
>>>>>> backwards compatible with the static field in the old version of
>>>>>> jtharness, as "commandHelpTree" will just be ignored.
>>>>>>
>>>>>> BR,
>>>>>> Stuart
>>>>>>
>>>>>> On 21 June 2017 at 16:48, Stuart Monteith <stuart.monteith at linaro.org>
>>>>>> wrote:
>>>>>>>
>>>>>>> The immediate problem is solved with the patch below (with no regards
>>>>>>> to backwards compatibility).
>>>>>>>
>>>>>>> I'm note getting clean test runs though. I see:
>>>>>>>
>>>>>>> TRT.finished(), attempting cache compress...TRT.finished(),
>>>>>>> requesting
>>>>>>> cache flush...Test results: passed: 89; failed: 47; error: 87
>>>>>>> Report written to
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> /home/stumon01/jtreg-local/jtreg/build/Basic.othervm/report/html/report.html
>>>>>>> Results written to
>>>>>>> /home/stumon01/jtreg-local/jtreg/build/Basic.othervm/work
>>>>>>> Error: Some tests failed or other problems occurred.
>>>>>>> ok...batch execution
>>>>>>> checking selection according to previous state
>>>>>>> state: 0 (passed)
>>>>>>> expected number of tests: 92
>>>>>>> found: 89
>>>>>>> wrong number of tests found
>>>>>>> java.lang.Error: wrong number of tests found
>>>>>>> at Basic.failed(Basic.java:346)
>>>>>>> at Basic.checkPreviousStateSelection(Basic.java:272)
>>>>>>> at Basic.<init>(Basic.java:115)
>>>>>>> at Basic.main(Basic.java:50)
>>>>>>> ../test/basic/Basic.gmk:78: recipe for target
>>>>>>> '../build/Basic.othervm.ok'
>>>>>>> failed
>>>>>>> make: *** [../build/Basic.othervm.ok] Error 1
>>>>>>> make: Leaving directory '/home/stumon01/jtreg-local/jtreg/make'
>>>>>>>
>>>>>>>
>>>>>>> I've not compared this against running with jtharness-4.6.jar.
>>>>>>>
>>>>>>> I don't suppose you're looking additional issues?
>>>>>>>
>>>>>>> BR,
>>>>>>> Stuart
>>>>>>>
>>>>>>>
>>>>>>> # HG changeset patch
>>>>>>> # User smonteith
>>>>>>> # Date 1498059859 -3600
>>>>>>> # Wed Jun 21 16:44:19 2017 +0100
>>>>>>> # Node ID 75cda45229ca989faf3e8ba83f45ccb951b1bb8f
>>>>>>> # Parent 33d0a6d64b82f5ca23b7b1eaadf74317b2204ecf
>>>>>>> Fix HelpTree field access
>>>>>>>
>>>>>>> diff -r 33d0a6d64b82 -r 75cda45229ca
>>>>>>> src/share/classes/com/sun/javatest/regtest/tool/Help.java
>>>>>>> --- a/src/share/classes/com/sun/javatest/regtest/tool/Help.java Mon
>>>>>>> Jun 12 14:35:46 2017 -0700
>>>>>>> +++ b/src/share/classes/com/sun/javatest/regtest/tool/Help.java Wed
>>>>>>> Jun 21 16:44:19 2017 +0100
>>>>>>> @@ -329,7 +329,7 @@
>>>>>>> try{
>>>>>>> Field f =
>>>>>>> HelpTree.class.getDeclaredField("nodeComparator");
>>>>>>> f.setAccessible(true);
>>>>>>> - f.set(null, new NodeComparator());
>>>>>>> + f.set(commandHelpTree, new NodeComparator());
>>>>>>> } catch (IllegalAccessException |
>>>>>>> IllegalArgumentException |
>>>>>>> NoSuchFieldException | SecurityException ignore) {
>>>>>>> }
>>>>>>>
>>>>>>> On 21 June 2017 at 16:30, Jonathan Gibbons
>>>>>>> <jonathan.gibbons at oracle.com>
>>>>>>> wrote:
>>>>>>>>
>>>>>>>> Yes, jtreg has not yet been updated to be compatible with JTHarness
>>>>>>>> 5.0.
>>>>>>>>
>>>>>>>> -- Jon
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On 6/21/17 8:15 AM, Stuart Monteith wrote:
>>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>> I just noticed I have hit this problem.
>>>>>>>>>
>>>>>>>>> HelpTree in jtharness-5.0.jar has this:
>>>>>>>>> private java.util.Comparator nodeComparator;
>>>>>>>>> Whereas in jtharness-4.6.jar it has:
>>>>>>>>> private static java.util.Comparator nodeComparator;
>>>>>>>>>
>>>>>>>>> i.e. the nodeComparator field is no longer a static field.
>>>>>>>>>
>>>>>>>>> This happened since adopt-openjdk started building with this:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> https://adopt-openjdk.ci.cloudbees.com/job/jtharness/lastSuccessfulBuild/artifact/jtharness-5.0.tar.gz
>>>>>>>>>
>>>>>>>>> BR,
>>>>>>>>> Stuart
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 9 June 2017 at 20:23, Jonathan Gibbons
>>>>>>>>> <jonathan.gibbons at oracle.com>
>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>> From a brief examination of the stacktrace, it looks like you
>>>>>>>>>> have
>>>>>>>>>> now-incompatible versions of jtharness and jtreg.
>>>>>>>>>>
>>>>>>>>>> I will make the jtreg code more robust.
>>>>>>>>>>
>>>>>>>>>> -- Jon
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 6/9/17 8:01 AM, Mani Sarkar wrote:
>>>>>>>>>>>
>>>>>>>>>>> Hi Jon,
>>>>>>>>>>>
>>>>>>>>>>> Any suggestions on how to resolve the below, apologies if I have
>>>>>>>>>>> missed
>>>>>>>>>>> out
>>>>>>>>>>> any communication with regards to the below.
>>>>>>>>>>>
>>>>>>>>>>> Thanks.
>>>>>>>>>>>
>>>>>>>>>>> Cheers,
>>>>>>>>>>> Mani
>>>>>>>>>>>
>>>>>>>>>>> On Fri, 2 Jun 2017 at 17:04 Mani Sarkar <sadhak001 at gmail.com>
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hi all,
>>>>>>>>>>>>
>>>>>>>>>>>> Recently jtreg stopped building on our build farm, checking the
>>>>>>>>>>>> logs
>>>>>>>>>>>> we
>>>>>>>>>>>> got (this version uses jdk9 as one of the jdks during the build
>>>>>>>>>>>> process):
>>>>>>>>>>>>
>>>>>>>>>>>> -compile-jtreg.usage:
>>>>>>>>>>>> [mkdir] Created dir:
>>>>>>>>>>>> /scratch/jenkins/workspace/jtreg/build/jtreg
>>>>>>>>>>>> [java] Executing
>>>>>>>>>>>> '/opt/java/sdk/Oracle/x86_64/jdk1.8.0_102/jre/bin/java' with
>>>>>>>>>>>> arguments:
>>>>>>>>>>>> [java] '-Dprogram=jtreg'
>>>>>>>>>>>> [java] '-classpath'
>>>>>>>>>>>> [java]
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> '/scratch/jenkins/workspace/jtreg/build/classes:/scratch/jenkins/workspace/jtreg/jtharness/lib/javatest.jar:/scratch/jenkins/workspace/jtreg/junit/junit.jar:/scratch/jenkins/workspace/jtreg/jh2.0/javahelp/lib/jh.jar'
>>>>>>>>>>>> [java] 'com.sun.javatest.regtest.Main'
>>>>>>>>>>>> [java] '-help'
>>>>>>>>>>>> [java] 'all'
>>>>>>>>>>>> [java]
>>>>>>>>>>>> [java] The ' characters around the executable and
>>>>>>>>>>>> arguments
>>>>>>>>>>>> are
>>>>>>>>>>>> [java] not part of the command.
>>>>>>>>>>>> [java] Output redirected to
>>>>>>>>>>>> /scratch/jenkins/workspace/jtreg/build/jtreg/usage.txt
>>>>>>>>>>>>
>>>>>>>>>>>> BUILD FAILED
>>>>>>>>>>>> /scratch/jenkins/workspace/jtreg/make/build.xml:192: Java
>>>>>>>>>>>> returned:
>>>>>>>>>>>> 6
>>>>>>>>>>>> at
>>>>>>>>>>>> org.apache.tools.ant.taskdefs.Java.execute(Java.java:111)
>>>>>>>>>>>> at
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
>>>>>>>>>>>> at
>>>>>>>>>>>> sun.reflect.GeneratedMethodAccessor4.invoke(Unknown
>>>>>>>>>>>> Source)
>>>>>>>>>>>> at
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:498)
>>>>>>>>>>>> at
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
>>>>>>>>>>>> at org.apache.tools.ant.Task.perform(Task.java:348)
>>>>>>>>>>>> at
>>>>>>>>>>>> org.apache.tools.ant.Target.execute(Target.java:435)
>>>>>>>>>>>> at
>>>>>>>>>>>> org.apache.tools.ant.Target.performTasks(Target.java:456)
>>>>>>>>>>>> at
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)
>>>>>>>>>>>> at
>>>>>>>>>>>> org.apache.tools.ant.Project.executeTarget(Project.java:1364)
>>>>>>>>>>>> at
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
>>>>>>>>>>>> at
>>>>>>>>>>>> org.apache.tools.ant.Project.executeTargets(Project.java:1248)
>>>>>>>>>>>> at org.apache.tools.ant.Main.runBuild(Main.java:851)
>>>>>>>>>>>> at org.apache.tools.ant.Main.startAnt(Main.java:235)
>>>>>>>>>>>> at
>>>>>>>>>>>> org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
>>>>>>>>>>>> at
>>>>>>>>>>>> org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Checking the usage.txt created in we see:
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Error: Unexpected exception occurred!
>>>>>>>>>>>> java.lang.NullPointerException
>>>>>>>>>>>> java.lang.NullPointerException
>>>>>>>>>>>> at
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> sun.reflect.UnsafeFieldAccessorImpl.ensureObj(UnsafeFieldAccessorImpl.java:57)
>>>>>>>>>>>> at
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> sun.reflect.UnsafeObjectFieldAccessorImpl.set(UnsafeObjectFieldAccessorImpl.java:75)
>>>>>>>>>>>> at java.lang.reflect.Field.set(Field.java:764)
>>>>>>>>>>>> at
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> com.sun.javatest.regtest.tool.Help.showCommandLineHelp(Help.java:332)
>>>>>>>>>>>> at
>>>>>>>>>>>> com.sun.javatest.regtest.tool.Help.show(Help.java:168)
>>>>>>>>>>>> at
>>>>>>>>>>>> com.sun.javatest.regtest.tool.Tool.run(Tool.java:960)
>>>>>>>>>>>> at
>>>>>>>>>>>> com.sun.javatest.regtest.tool.Tool.run(Tool.java:953)
>>>>>>>>>>>> at
>>>>>>>>>>>> com.sun.javatest.regtest.tool.Tool.main(Tool.java:133)
>>>>>>>>>>>> at com.sun.javatest.regtest.Main.main(Main.java:58)
>>>>>>>>>>>>
>>>>>>>>>>>> Logs can be found at
>>>>>>>>>>>> https://adopt-openjdk.ci.cloudbees.com/job/jtreg/843/consoleFull
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Any ideas whats leading to it?
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Cheers,
>>>>>>>>>>>>
>>>>>>>>>>>> Mani
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> @theNeomatrix369 <http://twitter.com/theNeomatrix369>* |
>>>>>>>>>>>> **Blog
>>>>>>>>>>>> <http://neomatrix369.wordpress.com/>** | *LJC Associate & LJC
>>>>>>>>>>>> Advocate
>>>>>>>>>>>> (@adoptopenjdk & @adoptajsr programs)
>>>>>>>>>>>> *Meet-a-Project - *MutabilityDetector
>>>>>>>>>>>> <https://github.com/MutabilityDetector>* | **Bitbucket
>>>>>>>>>>>> <https://bitbucket.org/neomatrix369>* * | **Github
>>>>>>>>>>>> <https://github.com/neomatrix369>* * | **LinkedIn
>>>>>>>>>>>> <http://uk.linkedin.com/pub/mani-sarkar/71/a77/39b>*
>>>>>>>>>>>> *Come to Devoxx UK 2017:* http://www.devoxx.co.uk/
>>>>>>>>>>>>
>>>>>>>>>>>> *Don't chase success, rather aim for "Excellence", and success
>>>>>>>>>>>> will
>>>>>>>>>>>> come
>>>>>>>>>>>> chasing after you!*
>>>>>>>>>>>>
>
More information about the jtreg-dev
mailing list