Giter VIP home page Giter VIP logo

openj9-systemtest's Introduction

openj9-systemtest

This repository contains the test cases which can be run against the OpenJ9 java implmentation but not OpenJDK.

The tests all run under the STF System Test Framework.

Quick start (Unix)

This quick start is for people who want to clone and build the project. To set up a development environment for creating new test cases, refer to this document.

Before running the build for the first time make sure GNU make, ant and wget are on your PATH.

wget is only required for the make configure step, which only needs to be done once.

Either copy, paste and execute this script which runs the command below, or run the commands yourself.

# 1. Create a directory for the git clone
mkdir -p $HOME/git

# 2. Clone the STF repository
cd $HOME/git
git clone [email protected]:AdoptOpenJDK/stf.git stf

# 3. Clone the openjdk-systemtest repository
cd $HOME/git
git clone [email protected]:AdoptOpenJDK/openjdk-systemtest.git openjdk-systemtest

# 4. Clone the openj9-systemtest repository
cd $HOME/git
git clone [email protected]:eclipse-openj9/openj9-systemtest.git openj9-systemtest

# 5. Set JAVA_HOME to a Java 8 or later Java
export JAVA_HOME=<java-home>

# 6.Install the prereqs
# This requires wget be on the PATH
cd $HOME/git/openj9-systemtest/openj9.build
make configure

# 7. Build
cd $HOME/git/openj9-systemtest/openj9.build
make

# 8. Run the tests (the tests take some time to run (many minutes))
cd $HOME/git/openj9-systemtest/openj9.build
make test
echo See /tmp/stf to view the test results

Quick Start (Windows)

This quick start is for people who want to clone and build the project. To set up a development environment for creating new test cases, refer to this document.

Before running the build for the first time make sure GNU make, ant and wget are on your PATH.

wget is only required for the make configure step, which only needs to be done once.

Either copy, paste and execute this script which runs the command below, or run the commands yourself.

REM 1. Create a directory for the git clones
mkdir %USERPROFILE%\git

REM 2. Clone the STF repository
cd %USERPROFILE%\git
git clone [email protected]:AdoptOpenJDK/stf.git stf

REM 3. Clone the openjdk-systemtest repository
cd %USERPROFILE%\git
git clone [email protected]:AdoptOpenJDK/openjdk-systemtest.git openjdk-systemtest

REM 4. Clone the openj9-systemtest repository
cd %USERPROFILE%\git
git clone [email protected]:eclipse-openj9/openj9-systemtest.git openj9-systemtest

REM 5. Set JAVA_HOME to a Java 9 or later Java
SET JAVA_HOME=<java-home>

REM 6. Get the test case prereqs
cd %USERPROFILE%\git\openj9-systemtest\openj9.build
make configure

REM 7. Build
cd %USERPROFILE%\git\openj9-systemtest\openj9.build
make

REM 8. Run the tests (takes a long time (many minutes))
cd %USERPROFILE%\git\openj9-systemtest\openj9.build
make test
echo See c:\stf_temp to view the test results

openj9-systemtest's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openj9-systemtest's Issues

Test-sanity.system-JDK11-win_x86-64_cmprssptrs fails to build '/RTC1' is not recognized

https://ci.eclipse.org/openj9/job/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/109

00:54:57      [exec] C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdk-tests\systemtest\openjdk-systemtest\openjdk.test.modularity\src\tests\com.test.jlink\native>cl /DWIN32 /D_WINDOWS -Gy /LD /Zi /Odi /c /RTC1 /Fo"C:\\Users\\jenkins\\workspace\\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\\openjdk-tests\\systemtest\\openjdk-systemtest\\openjdk.test.modularity\\bin\\tests\\com.test.jlink\\native\\lib\\win_x86-64/JniTest.obj" /Fd"C:\\Users\\jenkins\\workspace\\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\\openjdk-tests\\systemtest\\openjdk-systemtest\\openjdk.test.modularity\\bin\\tests\\com.test.jlink\\native\\lib\\win_x86-64/win_x86-64" /I. /I"C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdk-tests\systemtest\openjdk-systemtest/openjdk.test.modularity/bin/tests/com.test.jlink/native/lib" /I"C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdkbinary\j2sdk-image\/../include" /I"C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdkbinary\j2sdk-image\/../include/win32" /I"C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdkbinary\j2sdk-image\/include" /I"C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdkbinary\j2sdk-image\/include/win32" JniTest.c
00:54:57      [exec] make[1]: Leaving directory '/cygdrive/c/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/systemtest/openjdk-systemtest/openjdk.test.modularity/src/tests/com.test.jlink/native'
00:54:57      [exec] makefile:199: JAVA_EXECUTABLE set to 
00:54:57      [exec] '/RTC1' is not recognized as an internal or external command,
00:54:57      [exec] operable program or batch file.
00:54:57      [exec] make[1]: *** [makefile:226: C:\\Users\\jenkins\\workspace\\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\\openjdk-tests\\systemtest\\openjdk-systemtest\\openjdk.test.modularity\\bin\\tests\\com.test.jlink\\native\\lib\\win_x86-64/JniTest.obj] Error 1

STF test times out when daylight savings time changes

https://ci.eclipse.org/openj9/job/Test_openjdk8_j9_special.system_s390x_linux_Nightly/635
DaaLoadTest_all_special_27
variation: Mode612-OSRG
JVM_OPTIONS: -Xcompressedrefs -Xcompressedrefs -Xgcpolicy:gencon -Xjit:enableOSR,enableOSROnGuardFailure,count=1,disableAsyncCompilation

1.DLT.stdout shows both threads completed testing.

02:00:25.476 - Completed 98.5%. Number of tests started=709 (+638)
02:00:34.346 - Thread completed. Suite=0 thread=1
02:00:44.459 - Completed 100.0%. Number of tests started=720 (+11)
02:00:47.471 - Thread completed. Suite=0 thread=0
02:00:47.533 - Load test completed
02:00:47.533 -   Ran     : 720
02:00:47.533 -   Passed  : 720
02:00:47.533 -   Failed  : 0
02:00:47.533 -   Result  : PASSED

However a timeout occurred.

STF 02:00:00.066 - **FAILED** Process DLT has timed out
STF 02:00:00.066 - Collecting dumps for: DLT

Looking at the javacore's collected, tests are still running. There is movement between the first javacore and the second.

3XMTHREADINFO      "load-0" J9VMThread:0x000000000011B300, omrthread_t:0x000003FF4000B418, java/lang/Thread:0x000000000C95F5C8, state:R, prio=5
3XMJAVALTHREAD            (java/lang/Thread getId:0x16, isDaemon:false)
3XMTHREADINFO1            (native thread ID:0x43E, native priority:0x5, native policy:UNKNOWN, vmstate:CW, vm thread flags:0x00000081)
3XMTHREADINFO2            (native stack address range from:0x000003FFACC40000, to:0x000003FFACC80000, size:0x40000)
3XMCPUTIME               CPU usage total: 16.574560896 secs, current category="Application"
3XMHEAPALLOC             Heap bytes allocated since last GC cycle=2591864 (0x278C78)
3XMTHREADINFO3           Java callstack:
4XESTACKTRACE                at java/math/BigInteger.implSquareToLen(BigInteger.java:2079(Compiled Code))
4XESTACKTRACE                at java/math/BigInteger.squareToLen(BigInteger.java:2012(Compiled Code))
4XESTACKTRACE                at java/math/BigInteger.square(BigInteger.java:1981(Compiled Code))
4XESTACKTRACE                at java/math/BigInteger.square(BigInteger.java:1964(Compiled Code))
4XESTACKTRACE                at java/math/BigInteger.pow(BigInteger.java:2407(Compiled Code))
4XESTACKTRACE                at java/math/BigDecimal.<init>(BigDecimal.java:934(Compiled Code))
4XESTACKTRACE                at java/math/BigDecimal.<init>(BigDecimal.java:875(Compiled Code))
4XESTACKTRACE                at net/openj9/test/decimals/TestBD2PD2BD.generateRandomBigDecimal(TestBD2PD2BD.java:582(Compiled Code))
4XESTACKTRACE                at net/openj9/test/decimals/TestBD2PD2BD.testBigInteger(TestBD2PD2BD.java:491(Compiled Code))
4XESTACKTRACE                at sun/reflect/GeneratedMethodAccessor745.invoke(Bytecode PC:36(Compiled Code))
4XESTACKTRACE                at sun/reflect/DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43(Compiled Code))
4XESTACKTRACE                at java/lang/reflect/Method.invoke(Method.java:498(Compiled Code))
4XESTACKTRACE                at org/junit/runners/model/FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50(Compiled Code))
4XESTACKTRACE                at org/junit/internal/runners/model/ReflectiveCallable.run(ReflectiveCallable.java:12(Compiled Code))
4XESTACKTRACE                at org/junit/runners/model/FrameworkMethod.invokeExplosively(FrameworkMethod.java:47(Compiled Code))
4XESTACKTRACE                at org/junit/internal/runners/statements/InvokeMethod.evaluate(InvokeMethod.java:17(Compiled Code))
4XESTACKTRACE                at org/junit/internal/runners/statements/RunBefores.evaluate(RunBefores.java:26(Compiled Code))
4XESTACKTRACE                at org/junit/internal/runners/statements/RunAfters.evaluate(RunAfters.java:27(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.runLeaf(ParentRunner.java:325(Compiled Code))
4XESTACKTRACE                at org/junit/runners/BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78(Compiled Code))
4XESTACKTRACE                at org/junit/runners/BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner$3.run(ParentRunner.java:290(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner$1.schedule(ParentRunner.java:71(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.runChildren(ParentRunner.java:288(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.access$000(ParentRunner.java:58(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner$2.evaluate(ParentRunner.java:268(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.run(ParentRunner.java:363(Compiled Code))
4XESTACKTRACE                at org/junit/runners/Suite.runChild(Suite.java:128(Compiled Code))
4XESTACKTRACE                at org/junit/runners/Suite.runChild(Suite.java:27(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner$3.run(ParentRunner.java:290(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner$1.schedule(ParentRunner.java:71(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.runChildren(ParentRunner.java:288(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.access$000(ParentRunner.java:58(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner$2.evaluate(ParentRunner.java:268(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.run(ParentRunner.java:363(Compiled Code))
4XESTACKTRACE                at org/junit/runner/JUnitCore.run(JUnitCore.java:137(Compiled Code))
4XESTACKTRACE                at org/junit/runner/JUnitCore.run(JUnitCore.java:115(Compiled Code))
4XESTACKTRACE                at org/junit/runner/JUnitCore.run(JUnitCore.java:105(Compiled Code))
4XESTACKTRACE                at org/junit/runner/JUnitCore.runClasses(JUnitCore.java:62(Compiled Code))
4XESTACKTRACE                at org/junit/runner/JUnitCore.runClasses(JUnitCore.java:49(Compiled Code))
4XESTACKTRACE                at net/openj9/test/BasicTestRunner.runClass(BasicTestRunner.java:41(Compiled Code))
4XESTACKTRACE                at net/openj9/test/decimals/DecimalTestRunner.runTests(DecimalTestRunner.java:53(Compiled Code))
4XESTACKTRACE                at net/openj9/test/decimals/DecimalTestRunner.invokeTest(DecimalTestRunner.java:37(Compiled Code))
4XESTACKTRACE                at sun/reflect/GeneratedMethodAccessor1060.invoke(Bytecode PC:20(Compiled Code))
4XESTACKTRACE                at sun/reflect/DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43(Compiled Code))
4XESTACKTRACE                at java/lang/reflect/Method.invoke(Method.java:498(Compiled Code))
4XESTACKTRACE                at net/adoptopenjdk/loadTest/adaptors/ArbitraryJavaAdaptor.executeTest(ArbitraryJavaAdaptor.java:102(Compiled Code))
4XESTACKTRACE                at net/adoptopenjdk/loadTest/LoadTestRunner$2.run(LoadTestRunner.java:182)
4XESTACKTRACE                at java/util/concurrent/ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149(Compiled Code))
4XESTACKTRACE                at java/util/concurrent/ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
4XESTACKTRACE                at java/lang/Thread.run(Thread.java:819)
3XMTHREADINFO      "load-1" J9VMThread:0x00000000003A3500, omrthread_t:0x000003FF4000B910, java/lang/Thread:0x000000000C880278, state:R, prio=5
3XMJAVALTHREAD            (java/lang/Thread getId:0x17, isDaemon:false)
3XMTHREADINFO1            (native thread ID:0x43F, native priority:0x5, native policy:UNKNOWN, vmstate:CW, vm thread flags:0x00000081)
3XMTHREADINFO2            (native stack address range from:0x000003FFAC7C0000, to:0x000003FFAC800000, size:0x40000)
3XMCPUTIME               CPU usage total: 14.251473317 secs, current category="Application"
3XMHEAPALLOC             Heap bytes allocated since last GC cycle=20013608 (0x1316228)
3XMTHREADINFO3           Java callstack:
4XESTACKTRACE                at com/ibm/dataaccess/DecimalData.convertPackedDecimalToBigInteger(DecimalData.java:1274(Compiled Code))
4XESTACKTRACE                at net/openj9/test/decimals/TestDecimalData.testConvertBigIntegerNormals(TestDecimalData.java:4195(Compiled Code))
4XESTACKTRACE                at sun/reflect/GeneratedMethodAccessor762.invoke(Bytecode PC:36(Compiled Code))
4XESTACKTRACE                at sun/reflect/DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43(Compiled Code))
4XESTACKTRACE                at java/lang/reflect/Method.invoke(Method.java:498(Compiled Code))
4XESTACKTRACE                at org/junit/runners/model/FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50(Compiled Code))
4XESTACKTRACE                at org/junit/internal/runners/model/ReflectiveCallable.run(ReflectiveCallable.java:12(Compiled Code))
4XESTACKTRACE                at org/junit/runners/model/FrameworkMethod.invokeExplosively(FrameworkMethod.java:47(Compiled Code))
4XESTACKTRACE                at org/junit/internal/runners/statements/InvokeMethod.evaluate(InvokeMethod.java:17(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.runLeaf(ParentRunner.java:325(Compiled Code))
4XESTACKTRACE                at org/junit/runners/BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78(Compiled Code))
4XESTACKTRACE                at org/junit/runners/BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner$3.run(ParentRunner.java:290(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner$1.schedule(ParentRunner.java:71(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.runChildren(ParentRunner.java:288(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.access$000(ParentRunner.java:58(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner$2.evaluate(ParentRunner.java:268(Compiled Code))
4XESTACKTRACE                at org/junit/internal/runners/statements/RunBefores.evaluate(RunBefores.java:26(Compiled Code))
4XESTACKTRACE                at org/junit/internal/runners/statements/RunAfters.evaluate(RunAfters.java:27(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.run(ParentRunner.java:363(Compiled Code))
4XESTACKTRACE                at org/junit/runners/Suite.runChild(Suite.java:128(Compiled Code))
4XESTACKTRACE                at org/junit/runners/Suite.runChild(Suite.java:27(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner$3.run(ParentRunner.java:290(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner$1.schedule(ParentRunner.java:71(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.runChildren(ParentRunner.java:288(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.access$000(ParentRunner.java:58(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner$2.evaluate(ParentRunner.java:268(Compiled Code))
4XESTACKTRACE                at org/junit/runners/ParentRunner.run(ParentRunner.java:363(Compiled Code))
4XESTACKTRACE                at org/junit/runner/JUnitCore.run(JUnitCore.java:137(Compiled Code))
4XESTACKTRACE                at org/junit/runner/JUnitCore.run(JUnitCore.java:115(Compiled Code))
4XESTACKTRACE                at net/adoptopenjdk/loadTest/adaptors/JUnitAdaptor.executeTest(JUnitAdaptor.java:130(Compiled Code))
4XESTACKTRACE                at net/adoptopenjdk/loadTest/LoadTestRunner$2.run(LoadTestRunner.java:182(Compiled Code))
4XESTACKTRACE                at java/util/concurrent/ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149(Compiled Code))
4XESTACKTRACE                at java/util/concurrent/ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624(Compiled Code))
4XESTACKTRACE                at java/lang/Thread.run(Thread.java:819(Compiled Code))

OSX JDK8 Compile Error -- fatal error: 'jvmti.h' file not found

The following compile error was seen when openj9-systemtest's were run using OpenJ9 JDK8:

12:20:48      [exec] gcc -fPIC -fno-omit-frame-pointer -O0 -g3 -pedantic -Wall -std=c99 -c -D_JNI_IMPLEMENTATION_ -D_TRIVIAL_AGENT -DOS64 -o /Users/jenkins/workspace/Test-sanity.system-JDK8-osx_x86-64_cmprssptrs/openjdk-tests/systemtest/openj9-systemtest/openj9.test.sharedClasses.jvmti/bin/native/osx_x86-64/sharedClasses.o -I. -I/Users/jenkins/workspace/Test-sanity.system-JDK8-osx_x86-64_cmprssptrs/openjdkbinary/j2sdk-image/jre/bin/../include -I/Users/jenkins/workspace/Test-sanity.system-JDK8-osx_x86-64_cmprssptrs/openjdkbinary/j2sdk-image/jre/bin/../include/darwin -I/usr/include /Users/jenkins/workspace/Test-sanity.system-JDK8-osx_x86-64_cmprssptrs/openjdk-tests/systemtest/openj9-systemtest/openj9.test.sharedClasses.jvmti/src/native/sharedClasses.c
12:20:48      [exec] /Users/jenkins/workspace/Test-sanity.system-JDK8-osx_x86-64_cmprssptrs/openjdk-tests/systemtest/openj9-systemtest/openj9.test.sharedClasses.jvmti/src/native/sharedClasses.c:31:10: fatal error: 'jvmti.h' file not found
12:20:48      [exec] #include "jvmti.h"
12:20:48      [exec]          ^
12:20:48      [exec] 1 error generated.
12:20:48      [exec] make[1]: *** [/Users/jenkins/workspace/Test-sanity.system-JDK8-osx_x86-64_cmprssptrs/openjdk-tests/systemtest/openj9-systemtest/openj9.test.sharedClasses.jvmti/bin/native/osx_x86-64/sharedClasses.o] Error 1

The issue is in the include paths:

-I/Users/jenkins/workspace/Test-sanity.system-JDK8-osx_x86-64_cmprssptrs/openjdkbinary/j2sdk-image/jre/bin/../include
-I/Users/jenkins/workspace/Test-sanity.system-JDK8-osx_x86-64_cmprssptrs/openjdkbinary/j2sdk-image/jre/bin/../include/darwin

In OpenJ9 or Hotspot JDK8 on OSX, j2sdk-image/jre/include or j2sdk-image/jre/include/darwin don't exist. The correct paths are: j2sdk-image/include or j2sdk-image/include/darwin.

The incorrect include paths are set in openj9.test.sharedClasses.jvmti/src/native/Makefile#L148:

ifeq ($(PLATFORM),osx_x86-64)
    CFLAGS=-fPIC -fno-omit-frame-pointer -O0 -g3 -pedantic -Wall -std=c99 -c -D_JNI_IMPLEMENTATION_ -D_TRIVIAL_AGENT -DOS64 -o $(OBJDIR)/sharedClasses$(OSUFFIX)
    LFLAGS=-shared -o
    IFLAGS=-I. -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/darwin -I/usr/include
endif

In the above code, I think $(JAVA_HOME) is incorrect.

fyi - @Mesbah-Alam @smlambert @DanHeidinga

Build failure on aarch64 platform

top.xml file checks for arm, not aarch. Need to add it as an os.arch property.

19:13:20 /home/jenkins/workspace/Grinder/openjdk-tests/systemtest/openj9-systemtest/openj9.build/include/top.xml:404: The following error occurred while executing this line:
19:13:20 /home/jenkins/workspace/Grinder/openjdk-tests/systemtest/openj9-systemtest/openj9.build/include/top.xml:518: java os.arch property value aarch64 not recognised. Update the get-platform-arch macrodef in openj9.build/include/top.xml

Malformed \uxxxx encoding error during make configure

On my laptop, running make configure resulted in the below error.

c:\git\openjdk-systemtest\openjdk.build\include\top.xml:64: The following error occurred while executing this line:
c:\git\openjdk-systemtest\openjdk.build\include\top.xml:447: java.lang.IllegalArgumentException: Malformed \uxxxx encoding.
at java.util.Properties.loadConvert(Properties.java:618)
at java.util.Properties.load0(Properties.java:435)
at java.util.Properties.load(Properties.java:364)
at org.apache.tools.ant.taskdefs.LoadProperties.execute(LoadProperties.java:199)
.
.

In top.xml, in the "set-platform-properties" macrodefinition, output of the command "java -XshowSettings:properties -version" is redirected into a property file. In the next step, using ant's loadproperties, the property file is read.

The issue is because of "\u" character appearing in the PATH. I had an entry in PATH env variable which is like "C:\stf\unzip". Since "\u" is coming up in the path "C:\stf**\u**nzip", ant loadproperties fails with the mentioned error.

Path entries in the generated property file appears with single "" slash. Solution to fix this problem is to change it to "" slash.

jdk11 aarch64 sanity.system sharedClasses.jvmti natives fail to compile

https://ci.adoptopenjdk.net/view/Test_system/job/Test_openjdk11_j9_sanity.system_aarch64_linux/1/console

21:31:03 build-natives-unix:
21:31:03 [echo] make -C /home/jenkins/workspace/Test_openjdk11_j9_sanity.system_aarch64_linux/openjdk-tests/systemtest/openj9-systemtest/openj9.test.sharedClasses.jvmti/src/native SRCDIR=/home/jenkins/workspace/Test_openjdk11_j9_sanity.system_aarch64_linux/openjdk-tests/systemtest/openj9-systemtest/openj9.test.sharedClasses.jvmti/src/native PLATFORM=linux_arm-64 JAVA_HOME=/home/jenkins/workspace/Test_openjdk11_j9_sanity.system_aarch64_linux/openjdkbinary/j2sdk-image OUTDIR=/home/jenkins/workspace/Test_openjdk11_j9_sanity.system_aarch64_linux/openjdk-tests/systemtest/openj9-systemtest/openj9.test.sharedClasses.jvmti/bin/native
21:31:03 [exec] make[1]: Entering directory '/home/jenkins/workspace/Test_openjdk11_j9_sanity.system_aarch64_linux/openjdk-tests/systemtest/openj9-systemtest/openj9.test.sharedClasses.jvmti/src/native'
21:31:03 [exec] make[1]: Leaving directory '/home/jenkins/workspace/Test_openjdk11_j9_sanity.system_aarch64_linux/openjdk-tests/systemtest/openj9-systemtest/openj9.test.sharedClasses.jvmti/src/native'
21:31:03 [exec] Makefile:79: *** "The variable PLATFORM=linux_arm-64 is not one of aix_ppc-32,aix_ppc-64,linux_390-31,linux_390-64,linux_ppc-32,linux_ppc-64,linux_x86-32,linux_x86-64,win_x86-32,win_x86-64,zos_390-31,zos_390-64,linux_ppcle-64,linux_arm-32,linux_aarch64-64,osx_x86-64". Stop.
21:31:03
21:31:03 BUILD FAILED

Verify DAA tests on disk include latest changes

While investigating a failure recently I realized that on disk files are missing my DAA changes from last year. Creating this to track the veficiation.

Tests to be verified (src):

  • PD2Primitive
  • PDMoveShifts
  • arithmetics
  • binaryData
  • decimals
  • simple

Update headers with different SPDX-License-Identifier

In copyright headers, we need to update the SPDX-License-Identifier

  • SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
    needs to be changed to:
  • SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception

openj9.test.sharedClasses.jvmti fails to build on Windows

openj9.test.sharedClasses.jvmti fails to build on Windows

Fails with:

16:23:34      [exec] '/RTC1' is not recognized as an internal or external command

https://hyc-runtimes-jenkins.swg-devops.com/view/Test_system/job/Grinder/205/console

We need to find out why we are using /RTC1 flag in the compilation of natives in /openj9.test.sharedClasses.jvmti/src/native/Makefile

CFLAGS=/DWIN32 /D_WINDOWS -Gy /LD /Zi /Odi /c /RTC1 /Fo"$(OBJDIR)/sharedClasses$(OSUFFIX)" /Fd"$(OBJDIR)"

Add gcc to the prequisites list

was looking at my logs for a sanity.system test and I noticed that it used GCC. I then went to the prerequisites list and I noticed that GCC was not listed.
Can you please update the prerequisite list to indicate that GCC is required and which version is needed if applicable?
Related to eclipse-openj9/openj9#4208

Native tests build failure on aarch64

Same issue as adoptium/aqa-systemtest#73:

06:23:19 build-natives-unix:
06:23:19 [exec] make[1]: Entering directory '/home/jenkins/workspace/openjdk11_j9_systemtest_aarch64_linux/openjdk-tests/systemtest/openj9-systemtest/openj9.test.sharedClasses.jvmti/src/native'
06:23:19 [exec] make[1]: Leaving directory '/home/jenkins/workspace/openjdk11_j9_systemtest_aarch64_linux/openjdk-tests/systemtest/openj9-systemtest/openj9.test.sharedClasses.jvmti/src/native'
06:23:19 [exec] Makefile:74: *** "The variable PLATFORM=linux_aarch64-64 is not one of aix_ppc-32,aix_ppc-64,linux_390-31,linux_390-64,linux_ppc-32,linux_ppc-64,linux_x86-32,linux_x86-64,win_x86-32,win_x86-64,zos_390-31,zos_390-64,linux_ppcle-64,linux_arm-32,osx_x86-64". Stop.
06:23:19
06:23:19 BUILD FAILED

sanity.system failing to build on osx

Seems like a missing space issue again
https://ci.eclipse.org/openj9/job/Test-sanity.system-JDK11-osx_x86-64_cmprssptrs/49
osx1011-x86-1

03:08:11      [exec] ld: unknown option: -o/Users/jenkins/workspace/Test-sanity.system-JDK11-osx_x86-64_cmprssptrs/openjdk-tests/systemtest/openjdk-systemtest/openjdk.test.modularity/bin/tests/com.test.jlink/native/bin/osx_x86-64/libJniTest.so
03:08:11      [exec] collect2: ld returned 1 exit status

Likely related to eclipse-openj9/openj9#4078

Remove unnecessary checks from SharedClasses.classes.Sctest.softmx.increase.jitaot test

SharedClassesWorkloadTest_Softmx_Increase_JitAot does not require to have checks for cache full - it should only validate udpates in aot and jit data spaces. Since this test is not particularly consistent (re: rtc problem report - 139173), we should reduce it to only check for what it is meant to check. We have other tests for checking cache size increase and decrease.

Test-extended.system-JDK8-win_x86 SharedClassesWorkloadTest_Softmx_IncreaseDecrease_0 Can't open generation.stdout

https://ci.eclipse.org/openj9/job/Test-extended.system-JDK8-win_x86/108

STF 00:24:42.568 - Starting process to generate scripts: C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/openjdkbinary/j2sdk-image/jre/bin\..\..\/bin/java  -Dlog4j.skipJansi=true -Djava.system.class.loader=net.adoptopenjdk.stf.runner.StfClassLoader -classpath C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/openjdk-tests///..//jvmtest\systemtest\systemtest_prereqs/log4j-2.3/log4j-api-2.3.jar;C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/openjdk-tests///..//jvmtest\systemtest\systemtest_prereqs/log4j-2.3/log4j-core-2.3.jar;C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/jvmtest/systemtest/stf/stf.core/scripts/../bin net.adoptopenjdk.stf.runner.StfRunner -properties "C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/openjdk-tests/\TestConfig\test_output_15453728148136\SharedClassesWorkloadTest_Softmx_IncreaseDecrease_0/20181221-002442-SharedClassesWorkloadTest_Softmx_IncreaseDecrease/stf_parameters.properties, , C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/jvmtest/systemtest/stf/stf.core/config/stf.properties" -testDir "C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/openjdk-tests/\TestConfig\test_output_15453728148136\SharedClassesWorkloadTest_Softmx_IncreaseDecrease_0/20181221-002442-SharedClassesWorkloadTest_Softmx_IncreaseDecrease"
Can't open
	C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/openjdk-tests/\TestConfig\test_output_15453728148136\SharedClassesWorkloadTest_Softmx_IncreaseDecrease_0/20181221-002442-SharedClassesWorkloadTest_Softmx_IncreaseDecrease/generation/generation.stdout: No such file or directory (#1)
    (S inplace) The implicit opening of a file through use of the <>
    filehandle, either implicitly under the -n or -p command-line
    switches, or explicitly, failed for the indicated reason.  Usually
    this is because you don't have read permission for a file which
    you named on the command line.
    
    (F) You tried to call perl with the -e switch, but /dev/null (or
    your operating system's equivalent) could not be opened.
    
Uncaught exception from user code:
	Can't open C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/openjdk-tests/\TestConfig\test_output_15453728148136\SharedClassesWorkloadTest_Softmx_IncreaseDecrease_0/20181221-002442-SharedClassesWorkloadTest_Softmx_IncreaseDecrease/generation/generation.stdout: No such file or directory
	stf::ProcessMgmt::Windows::start(stf::ProcessMgmt::Windows=HASH(0x1627500)) called at C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/jvmtest/systemtest/stf/stf.core/scripts/stf/Commands.pm line 268
	stf::Commands::start_process("stf::Commands", "mnemonic", "GEN", "command", "C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/"..., "logName", "C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/"..., "uid", ...) called at C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/jvmtest/systemtest/stf/stf.core/scripts/stf/Commands.pm line 864
	stf::Commands::run_process("stf::Commands", "mnemonic", "GEN", "command", "C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/"..., "logName", "C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/"..., "uid", ...) called at C:/Users/jenkins/workspace/Test-extended.system-JDK8-win_x86/openjdk-tests///..//jvmtest\systemtest\stf\stf.core\scripts\stf.pl line 440

SharedClassesWorkloadTest_Softmx_IncreaseDecrease_0_FAILED

DaaLoadTest_daa1 sets -Djava.security.manager=allow while running jcmd with default JVM

See eclipse-openj9/openj9#13477 (comment)

DaaLoadTest_daa1_special_5m_24 failed and the test framework tried to use jcmd from the default JVM to get diagnostics. The default JVM is jdk11, but the test has the following environment variable set which doesn't work with jdk11.
../system.mk:59: Environment variable JAVA_TOOL_OPTIONS is set to '-Djava.security.manager=allow'

We could use jcmd from the JVM under test instead.

@llxia @Mesbah-Alam fyi

SharedClassesCacheChecker deletes non-test related caches from default location

If default location is used for generating test specific SC caches, SharedClassesCacheChecker has the potential to delete non-test related caches as it iterates through the default location and deletes all caches it finds.

Example:

https://ci.eclipse.org/openj9/job/Test-extended.system-JDK8-win_x86-64_cmprssptrs/139/tapResults/

SCC stderr Details for Cache 5
SCC stderr 
SCC stderr Jan 17, 2019 8:22:07 AM net.openj9.sc.api.SharedClassesCacheChecker verify
SCC stderr INFO: cache name is sharedcc_LOCAL SERVICE

The only test that uses SharedClassesCacheChecker is SharedClassesAPI test. We need to update the test to invoke SharedClassesCacheChecker in such a way that, when default cacheDir is used, it only deletes the cache that the test created.

Make does not identify paths with spaces properly.

While building openj9, if the path passed to the make command has a space in the middle, the make seems to be identifying the portion after the space as a target, causing the build the fail.

Here is a trace :

C:\Users\IBM_ADMIN\Desktop>"c:\Program Files (x86)\Microsoft Visual Studio 10.0
VC\vcvarsall.bat" amd64 && make -C C:\Users\IBM_ADMIN\git\openj9-systemtest\op
enj9.test.sharedClasses.jvmti/src/native SRCDIR=C:\Users\IBM_ADMIN\git\openj9-sy
stemtest\openj9.test.sharedClasses.jvmti/src/native PLATFORM=win_x86-64 JAVA_HOM
E=C:\Users\IBM_ADMIN\Desktop\Java Builds\sdk OUTDIR=C:\Users\IBM_ADMIN\git\openj9
-systemtest\openj9.test.sharedClasses.jvmti/bin/native
Setting environment for using Microsoft Visual Studio 2010 x64 tools.
make: Entering directory `C:/Users/IBM_ADMIN/git/openj9-systemtest/openj9.test.s
haredClasses.jvmti/src/native'

make: *** No rule to make target `Builds\sdk'. Stop.

make: Leaving directory `C:/Users/IBM_ADMIN/git/openj9-systemtest/openj9.test.sharedClasses.jvmti/src/native'

playlist.xml:30:55: The entity name must immediately follow the '&' in the entity reference

The problem is intermittent for some reason.
https://ci.eclipse.org/openj9/job/Test_openjdk8_j9_extended.system_s390x_linux_xl_Nightly/40

10:03:11  Generating make file /home/jenkins/jenkins-agent/workspace/Test_openjdk8_j9_extended.system_s390x_linux_xl_Nightly/openjdk-tests/TKG/../system/openj9-systemtest/openj9.build/autoGen.mk
10:03:11  [Fatal Error] playlist.xml:30:55: The entity name must immediately follow the '&' in the entity reference.
10:03:11  org.xml.sax.SAXParseException; systemId: file:/home/jenkins/jenkins-agent/workspace/Test_openjdk8_j9_extended.system_s390x_linux_xl_Nightly/openjdk-tests/TKG/../system/openj9-systemtest/openj9.build/playlist.xml; lineNumber: 30; columnNumber: 55; The entity name must immediately follow the '&' in the entity reference.
10:03:11  	at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:257)
10:03:11  	at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:339)
10:03:11  	at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:205)
10:03:11  	at org.testKitGen.MkGen.processPlaylist(MkGen.java:100)
10:03:11  	at org.testKitGen.MkGen.start(MkGen.java:67)
10:03:11  	at org.testKitGen.MkTreeGen.traverse(MkTreeGen.java:78)
10:03:11  	at org.testKitGen.MkTreeGen.traverse(MkTreeGen.java:69)
10:03:11  	at org.testKitGen.MkTreeGen.traverse(MkTreeGen.java:69)
10:03:11  	at org.testKitGen.MkTreeGen.traverse(MkTreeGen.java:69)
10:03:11  	at org.testKitGen.MkTreeGen.start(MkTreeGen.java:27)
10:03:11  	at org.testKitGen.MainRunner.start(MainRunner.java:29)
10:03:11  	at org.testKitGen.MainRunner.main(MainRunner.java:23)
10:03:11  makeGen.mk:39: recipe for target 'autogen' failed

systemtest compile tries to copy tools.jar from Java 11 JDK

make compile fails because it is trying to copy tools.jar. That file was removed from the JDK as of Java 9.

The JDK was built per instructions: https://www.eclipse.org/openj9/oj9_build.html#version-11.
The test repo was set up per instructions: https://github.com/eclipse/openj9/wiki/Reproducing-Test-Failures-Locally

git clone https://github.com/AdoptOpenJDK/openjdk-tests.git
cd openjdk-tests/
./get.sh -t $PWD -i openj9 -p x64_mac
cd TestConfig/
export BUILD_LIST=systemtest
export JDK_VERSION=11
export JDK_IMPL=openj9
export SPEC=osx_x86-64_cmprssptrs
export JAVA_BIN=/Users/pdbain/vm/openj9-openjdk-jdk11/build/macosx-x86_64-normal-server-release/images/jdk/bin
make -f run_configure.mk 
make compile
...
BUILD FAILED
/Users/pdbain/macprojects/systemtest/openjdk-tests/TestConfig/scripts/build_test.xml:71: The following error occurred while executing this line:
/Users/pdbain/macprojects/systemtest/openjdk-tests/systemtest/build.xml:172: The following error occurred while executing this line:
/Users/pdbain/macprojects/systemtest/openjdk-tests/systemtest/openj9-systemtest/openj9.build/include/top.xml:193: The following error occurred while executing this line:
/Users/pdbain/macprojects/systemtest/openjdk-tests/systemtest/openjdk-systemtest/openjdk.build/include/top.xml:300: Warning: Could not find file /Users/pdbain/vm/openj9-openjdk-jdk11/build/macosx-x86_64-normal-server-release/images/jdk/lib/tools.jar to copy.

sanity.system module tests failing

https://ci.eclipse.org/openj9/job/Test-sanity.system-JDK11-linux_x86-64_cmprssptrs/120
https://ci.eclipse.org/openj9/job/Test-sanity.system-JDK11-linux_ppc-64_cmprssptrs_le/114
https://ci.eclipse.org/openj9/job/Test-sanity.system-JDK11-linux_x86-64/116
https://ci.eclipse.org/openj9/job/Test-sanity.system-JDK11-osx_x86-64_cmprssptrs/24
https://ci.eclipse.org/openj9/job/Test-sanity.system-JDK11-linux_390-64_cmprssptrs/112

03:48:53 FAILED test targets:
03:48:53 	CpMpTest_CpMp_0
03:48:53 	CpMpTest_MP_0
03:48:53 	CpMpTest2_0
03:48:53 	CpMpTest3_0
03:48:53 	CpMpModularJarTest_0
03:48:53 	CpMpModularJarTest2_0
03:48:53 	CpMpModularJarTest3_0
03:48:53 	JDKInternalAPIsTest_0
03:48:53 	AutomaticModulesTest1_0
03:48:53 	AutomaticModulesTest2_0
03:48:53 	AutomaticModulesTest_ImpliedReadabilityTest1_0
03:48:53 	AutomaticModulesTest_ImpliedReadabilityTest2_0
03:48:53 	AutomaticModulesTest_ImpliedReadabilityTest3_0
03:48:53 	ServiceLoadersTest_0
03:48:53 	PatchModuleTest_PlatformModPatchModule_0
03:48:53 	PatchModuleTest_AppModPatchModule_0
03:48:53 	PatchModuleTest_UnexportedTypePatchModule_0
03:48:53 	PatchModuleTest_AdvancedPatchModule_0
03:48:53 	PatchModuleImageTest_PlatformModPatchModule_0
03:48:53 	PatchModuleImageTest_AppModPatchModule_0
03:48:53 	PatchModuleImageTest_UnexportedTypePatchModule_0
03:48:53 	PatchModuleImageTest_AdvancedPatchModule_0
03:48:53 	UpgradeModPathTest_ExpDirModUpgrade_0
03:48:53 	UpgradeModPathTest_ExpDirModUpgradeCRImage_0
03:48:53 	UpgradeModPathTest_JarredModUpgrade_0
03:48:53 	UpgradeModPathTest_JarredModUpgradeCRImage_0
03:48:53 	JlinkTest_RequiredMod_0
03:48:53 	JlinkTest_AddModLimitMod_0
03:48:53 	CpMpJlinkTest_0
03:48:53 	JlinkPluginOptionsTest_GeneralOptionsTest_0
03:48:53 	LayersTest_0
03:48:53 	CLTest_0
03:48:53 	CLTestImage_0
03:48:53 	CLLoadTest_0

SharedClasses.SCM01.* failure due to String mismatch

Tests need to update to match soft full for JDK10

SCC stderr 
SCC stderr Cache is 63% soft full
SCC stderr 
SCC stderr Cache is accessible to current user = true
STF 04:06:10.345 - Monitoring Report Summary:
STF 04:06:10.345 -   o Process SCC ended with the expected exit code (1)
**FAILED** at step 7 (Print Shared Classes Cache Stats). Expected return value=0 Actual=0 at /home/jenkins/workspace/openjdk10_j9_systemtest_ppc64le_linux/openjdk-tests/TestConfig/scripts/testKitGen/../../../TestConfig/test_output_15311944025646/SharedClasses.SCM01.SingleCL_0/20180710-040416-SharedClasses/execute.pl line 173.
STF 04:06:10.436 - **FAILED** execute script failed. Expected return value=0 Actual=1

https://ci.adoptopenjdk.net/view/System%20tests/job/openjdk10_j9_systemtest_ppc64le_linux/54/tapResults/

Add check for the number of shared caches found in SharedClassesAPI test

https://ci.eclipse.org/openj9/job/Test-extended.system-JDK11-aix_ppc-64_cmprssptrs/40/tapResults/

SCC ************
SCC VERIFICATION FAILED
SCC ************
SCC ERROR: found 5 caches. Expected 4 caches

In Java 11, the default cache directory has been changed and class sharing is enabled by default. Many sub-tests in SharedClassesAPI test needs to be updated for Java 11.

Also I see
STF 02:55:05.760 - Running command: /home/u0020236/workspace/Test-extended.system-JDK11-aix_ppc-64_cmprssptrs/openjdkbinary/j2sdk-image/bin/../bin/java -Xshareclasses:name=DefaultLocationGroupAccessJavaWL1,,persistent,groupAccess

The sub-options after the typo ",," are not parsed at all, making most of the sub-tests bogus.

I temporarily removed the check for the number of shared caches being found #48. It needs to be added back if all the problems in this test suite are fixed

SC_Softmx_Increase_0 failures

example failure: https://ci.eclipse.org/openj9/job/Test_openjdk13_j9_extended.system_x86-64_linux_Nightly/17
for all failures see https://ci.eclipse.org/openj9/job/Pipeline-Build-Test-All/620/

SC_Softmx_Increase_0 is failing on what appears to be all platforms and java versions after eclipse-openj9/openj9#6536 is merged. This PR changes the format of the shared cache and consumes more space. I expect the test needs to be re-tuned.

STF 02:37:13.843 - +------ Step 6 - Print Shared Classes Cache Stats
STF 02:37:13.843 - | Print shared classes cache stats
STF 02:37:13.843 - |   Options:          -Xshareclasses:name=SCC_SysTest_Workload_Cache,cacheDir=/home/jenkins/workspace/Test_openjdk13_j9_extended.system_x86-64_linux_Nightly/openjdk-tests/TestConfig/test_output_156654032010/SC_Softmx_Increase_0/20190823-023607-SharedClassesWorkloadTest_Softmx_Increase/results/cache${cacheOperation}
STF 02:37:13.843 - |   CacheName:        SCC_SysTest_Workload_Cache
STF 02:37:13.843 - |   CacheDir:         /home/jenkins/workspace/Test_openjdk13_j9_extended.system_x86-64_linux_Nightly/openjdk-tests/TestConfig/test_output_156654032010/SC_Softmx_Increase_0/20190823-023607-SharedClassesWorkloadTest_Softmx_Increase/results/cache
STF 02:37:13.843 - |   CacheOperation:   ,printStats
STF 02:37:13.843 - |   ExpectedMessages: [Cache is 100% soft full]
STF 02:37:13.843 - |
STF 02:37:13.844 - Running command: /home/jenkins/workspace/Test_openjdk13_j9_extended.system_x86-64_linux_Nightly/openjdkbinary/j2sdk-image/bin/java -Xshareclasses:name=SCC_SysTest_Workload_Cache,cacheDir=/home/jenkins/workspace/Test_openjdk13_j9_extended.system_x86-64_linux_Nightly/openjdk-tests/TestConfig/test_output_156654032010/SC_Softmx_Increase_0/20190823-023607-SharedClassesWorkloadTest_Softmx_Increase/results/cache,printStats -Xcompressedrefs
STF 02:37:13.844 - Redirecting stderr to /home/jenkins/workspace/Test_openjdk13_j9_extended.system_x86-64_linux_Nightly/openjdk-tests/TestConfig/test_output_156654032010/SC_Softmx_Increase_0/20190823-023607-SharedClassesWorkloadTest_Softmx_Increase/results/6.SCC.stderr
STF 02:37:13.844 - Redirecting stdout to /home/jenkins/workspace/Test_openjdk13_j9_extended.system_x86-64_linux_Nightly/openjdk-tests/TestConfig/test_output_156654032010/SC_Softmx_Increase_0/20190823-023607-SharedClassesWorkloadTest_Softmx_Increase/results/6.SCC.stdout
STF 02:37:13.846 - Monitoring processes: SCC
SCC stderr 
SCC stderr Current statistics for cache "SCC_SysTest_Workload_Cache": 
SCC stderr 
SCC stderr Cache created with:
SCC stderr 	-Xnolinenumbers                      = false
SCC stderr 	BCI Enabled                          = true
SCC stderr 	Restrict Classpaths                  = false
SCC stderr 	Feature                              = cr
SCC stderr 
SCC stderr Cache contains only classes with line numbers
SCC stderr 
SCC stderr base address                         = 0x00007F4D7EC23000
SCC stderr end address                          = 0x00007F4D80000000
SCC stderr allocation pointer                   = 0x00007F4D7ECCEEC8
SCC stderr 
SCC stderr cache size                           = 20970912
SCC stderr softmx bytes                         = 1048576
SCC stderr free bytes                           = 1100
SCC stderr ROMClass bytes                       = 704200
SCC stderr AOT bytes                            = 40
SCC stderr Reserved space for AOT bytes         = -1
SCC stderr Maximum space for AOT bytes          = -1
SCC stderr JIT data bytes                       = 0
SCC stderr Reserved space for JIT data bytes    = -1
SCC stderr Maximum space for JIT data bytes     = -1
SCC stderr Zip cache bytes                      = 0
SCC stderr Startup hint bytes                   = 0
SCC stderr Data bytes                           = 142752
SCC stderr Metadata bytes                       = 7832
SCC stderr Metadata % used                      = 0%
SCC stderr Class debug area size                = 1662976
SCC stderr Class debug area used bytes          = 192044
SCC stderr Class debug area % used              = 11%
SCC stderr 
SCC stderr # ROMClasses                         = 168
SCC stderr # AOT Methods                        = 0
SCC stderr # Classpaths                         = 1
SCC stderr # URLs                               = 0
SCC stderr # Tokens                             = 0
SCC stderr # Zip caches                         = 0
SCC stderr # Startup hints                      = 0
SCC stderr # Stale classes                      = 0
SCC stderr % Stale classes                      = 0%
SCC stderr 
SCC stderr Cache is 99% soft full
SCC stderr 
SCC stderr Cache is accessible to current user = true
STF 02:37:14.053 - Monitoring Report Summary:
STF 02:37:14.054 -   o Process SCC ended with the expected exit code (1)
**FAILED** at step 6 (Print Shared Classes Cache Stats). Expected return value=0 Actual=0 at /home/jenkins/workspace/Test_openjdk13_j9_extended.system_x86-64_linux_Nightly/openjdk-tests/TestConfig/scripts/testKitGen/../../../TestConfig/test_output_156654032010/SC_Softmx_Increase_0/20190823-023607-SharedClassesWorkloadTest_Softmx_Increase/execute.pl line 236.
STF 02:37:14.326 - **FAILED** execute script failed. Expected return value=0 Actual=1

Git clone URLs to be corrected in the README

Currently, the git clone URLs look like this.
git clone [email protected]/AdoptOpenJDK/stf.git stf

This fails with the message "fatal: repository '[email protected]/AdoptOpenJDK/stf.git' does not exist".

The command should read git clone [email protected]:AdoptOpenJDK/stf.git stf

It should be ":" after github.com instead of "/".
This applies to all the git URLs. I've just given one as example above.

Instead of this,
git clone [email protected]/eclipse/openj9/openj9-systemtest.git openj9-systemtest

It should read
git clone [email protected]:eclipse/openj9-systemtest.git openj9-systemtest

Disable system test modes running -Xint

Running the system tests with -Xint is way too slow. We don't need to run these modes on a regular basis, they can be disabled and available to run manually.
https://ci.eclipse.org/openj9/job/Test_openjdk11_j9_special.system_ppc64le_linux_Personal/31

DaaLoadTest_daa1_special_19
11:09:52 variation: Mode550
11:09:52 JVM_OPTIONS: -Xcompressedrefs -Xcompressedrefs -Xint -Xgcpolicy:balanced
13:26:09 DLT 17:26:08.430 - Load test completed

DaaLoadTest_daa2_special_19
14:44:24 variation: Mode550
14:44:24 JVM_OPTIONS: -Xcompressedrefs -Xcompressedrefs -Xint -Xgcpolicy:balanced
15:23:54 DLT 19:23:52.247 - Load test completed

DaaLoadTest_daa3_special_19
16:27:26 variation: Mode550
16:27:26 JVM_OPTIONS: -Xcompressedrefs -Xcompressedrefs -Xint -Xgcpolicy:balanced
16:30:44 DLT 20:30:43.678 - Load test completed

DaaLoadTest_all_special_19
16:45:29 variation: Mode550
16:45:29 JVM_OPTIONS: -Xcompressedrefs -Xcompressedrefs -Xint -Xgcpolicy:balanced
18:02:19 DLT 22:02:17.755 - Completed 38.6%. Number of tests started=2781 (+0)

No makefile test targets for jlm

The openj9.build/makefile does not have any targets to run the newly added openj9 specific jlm tests.

A user should be able to run
make help
and see targets which can be run to execute the tests in the repository (so make help needs to be updated as well as adding the targets themselves).

Window system tests do not build for the 0.12 release

https://ci.eclipse.org/openj9/job/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/154
https://ci.eclipse.org/openj9/job/Test-extended.system-JDK11-win_x86-64_cmprssptrs/153

19:14:14 build-natives-windows:
19:14:14      [exec] 
19:14:14      [exec] C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdk-tests\systemtest\openjdk-systemtest\openjdk.test.modularity>call "c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" amd64   && make -C C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdk-tests\systemtest\openjdk-systemtest/openjdk.test.modularity/src/tests/com.test.jlink/native SRC=JniTest PLATFORM=win_x86-64 JAVA_HOME=C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdkbinary\j2sdk-image\ OUTDIR=C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdk-tests\systemtest\openjdk-systemtest/openjdk.test.modularity/bin/tests/com.test.jlink/native/bin HEADERDIR=C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdk-tests\systemtest\openjdk-systemtest/openjdk.test.modularity/bin/tests/com.test.jlink/native/lib OSNAME=win 
19:14:14      [exec] Setting environment for using Microsoft Visual Studio 2010 x64 tools.
19:14:14      [exec] make[1]: Entering directory '/cygdrive/c/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/systemtest/openjdk-systemtest/openjdk.test.modularity/src/tests/com.test.jlink/native'
19:14:14      [exec] makefile:224: JAVA_EXECUTABLE set to C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdkbinary\j2sdk-image\/bin/java/.exe
19:14:14      [exec] mkdir -p C:/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/systemtest/openjdk-systemtest/openjdk.test.modularity/bin/tests/com.test.jlink/native/bin/win_x86-64
19:14:14      [exec] mkdir -p C:/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/systemtest/openjdk-systemtest/openjdk.test.modularity/bin/tests/com.test.jlink/native/lib/win_x86-64
19:14:14      [exec] cmd /c cl /DWIN32 /D_WINDOWS -Gy /LD /Zi /Odi /c /RTC1 /Fo"C:/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/systemtest/openjdk-systemtest/openjdk.test.modularity/bin/tests/com.test.jlink/native/lib/win_x86-64/JniTest.obj" /Fd"C:/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/systemtest/openjdk-systemtest/openjdk.test.modularity/bin/tests/com.test.jlink/native/lib/win_x86-64/win_x86-64" /I. /I"C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdk-tests\systemtest\openjdk-systemtest/openjdk.test.modularity/bin/tests/com.test.jlink/native/lib" /I"C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdkbinary\j2sdk-image\/../include" /I"C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdkbinary\j2sdk-image\/../include/win32" /I"C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdkbinary\j2sdk-image\/include" /I"C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdkbinary\j2sdk-image\/include/win32" JniTest.c
19:14:15      [exec] Microsoft (R) C/C++ Optimizing Compiler Version 16.00.40219.01 for x64
19:14:15      [exec] JniTest.c
19:14:15      [exec] Copyright (C) Microsoft Corporation.  All rights reserved.
19:14:15      [exec] 
19:14:16      [exec] cmd /c link /NOLOGO /DLL /INCREMENTAL:NO /NODEFAULTLIB:LIBCMTD /OUT: C:/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/systemtest/openjdk-systemtest/openjdk.test.modularity/bin/tests/com.test.jlink/native/bin/win_x86-64/JniTest.dll C:/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/systemtest/openjdk-systemtest/openjdk.test.modularity/bin/tests/com.test.jlink/native/lib/win_x86-64/JniTest.obj
19:14:16      [exec] LINK : fatal error LNK1146: no argument specified with option '/OUT:'
19:14:16      [exec] make[1]: Leaving directory '/cygdrive/c/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/systemtest/openjdk-systemtest/openjdk.test.modularity/src/tests/com.test.jlink/native'
19:14:16      [exec] make[1]: *** [makefile:239: C:/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/systemtest/openjdk-systemtest/openjdk.test.modularity/bin/tests/com.test.jlink/native/bin/win_x86-64/JniTest.dll] Error 122
19:14:16 
19:14:16 BUILD FAILED

No support for non-IBM OpenJ9 VMs

At the moment if you try to use this test suite under STF with an AdoptOpenJDK-openJ9 build it fails immediately with "This test requires an IBM JVM"

I've got a fork of the STF code at https://github.com/sxa555/stf/tree/OpenJ9check which resolves this (checks for the OpenJ9 string as well as IBM) but we need to be sure that's correct in all cases i.e. ensure that everywhere it's used will really work on AdoptOpenJDK-OpenJ9.

We may choose to replace isIBMJvm with isJ9JVM, or have separate methods for both of them.

Test-sanity.system-JDK11-win jlink tests failing

47 - - JlinkTest_RequiredMod_0
48 - - JlinkTest_AddModLimitMod_0
50 - - JlinkPluginOptionsTest_GeneralOptionsTest_0

https://ci.eclipse.org/openj9/job/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/129
win2012r2-x86-2

STF 01:04:12.978 - Running command: C:/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdkbinary/j2sdk-image/bin/../bin/jmod create --class-path C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\openjdk-tests\TestConfig\test_output_15471011417768\JlinkTest_RequiredMod_0\20190110-010408-JlinkTest\tmp\..\com.test.jLinkDirCopy --config C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\jvmtest\systemtest\openjdk-systemtest\openjdk.test.modularity\bin\tests\com.test.jlink\conf --libs C:\Users\jenkins\workspace\Test-sanity.system-JDK11-win_x86-64_cmprssptrs\jvmtest\systemtest\openjdk-systemtest\openjdk.test.modularity\bin\tests\com.test.jlink\native\bin\win_x86-64 C:/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/TestConfig/test_output_15471011417768/JlinkTest_RequiredMod_0/20190110-010408-JlinkTest/tmp/com.test.jlink.jmod
STF 01:04:12.979 - Redirecting stderr to C:/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/TestConfig/test_output_15471011417768/JlinkTest_RequiredMod_0/20190110-010408-JlinkTest/results/8.JMOD.stderr
STF 01:04:12.979 - Redirecting stdout to C:/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/TestConfig/test_output_15471011417768/JlinkTest_RequiredMod_0/20190110-010408-JlinkTest/results/8.JMOD.stdout
STF 01:04:12.984 - Monitoring processes: JMOD
JMOD Error: Packages that are exported or open in com.test.jlink are not present: [adoptopenjdk.test.modularity.jlink]
STF 01:04:13.380 - **FAILED** Process JMOD ended with exit code (2) and not the expected exit code/s (0)
STF 01:04:13.381 - Monitoring Report Summary:
STF 01:04:13.381 -   o Process JMOD ended with exit code (2) and not the expected exit code/s (0)
STF 01:04:13.381 - Killing processes: JMOD
STF 01:04:13.381 -   o Process JMOD is not running
**FAILED** at step 8 (Run jmod). Expected return value=0 Actual=1 at C:/Users/jenkins/workspace/Test-sanity.system-JDK11-win_x86-64_cmprssptrs/openjdk-tests/\TestConfig\test_output_15471011417768\JlinkTest_RequiredMod_0/20190110-010408-JlinkTest/setUp.pl line 230.
STF 01:04:13.415 - **FAILED** setup script failed. Expected return value=0 Actual=1

Test-extended.system-JDK11-linux_x86-64 SharedClassesWorkloadTest_Softmx_IncreaseDecrease_0

Duplicating eclipse-openj9/openj9#4139 here since I'm not sure why the test fails.

https://ci.eclipse.org/openj9/job/Test-extended.system-JDK11-linux_x86-64/113
https://ci.eclipse.org/openj9/job/Test-extended.system-JDK11-linux_x86-64_cmprssptrs/119

**FAILED** at step 11 (Print Shared Classes Cache Stats). Expected return value=0 Actual=0 at /home/jenkins/workspace/Test-extended.system-JDK11-linux_x86-64/openjdk-tests/TestConfig/scripts/testKitGen/../../../TestConfig/test_output_15452906947746/SharedClassesWorkloadTest_Softmx_IncreaseDecrease_0/20181220-074214-SharedClassesWorkloadTest_Softmx_IncreaseDecrease/execute.pl line 429.
STF 07:43:22.137 - **FAILED** execute script failed. Expected return value=0 Actual=1

SharedClassesWorkloadTest_Softmx_Increase_JitAot fails with AOT data not increased

Test failing with "AOT and / or JITdata space after the softmx was increased is not greater than what they were before the increase was made" : https://ci.eclipse.org/openj9/job/Test-extended.system-JDK11-linux_x86-64_cmprssptrs/23/tapResults/

This is caused by AOT bytes not having a greater value than it had before (10064 bytes) after attempt was made to increase JIT data and AOT data in the test. Note - JIT data did increase.

Hang Shao decided to update the test and let it pass if we have same AOT and JIT data after softmx increase.

Test-extended.system-JDK8-win_x86 SharedClassesAPI_0 sharedcc_LOCAL SERVICE

https://ci.eclipse.org/openj9/job/Test-extended.system-JDK8-win_x86/108
https://ci.eclipse.org/openj9/job/Test-extended.system-JDK8-win_x86-64_cmprssptrs/111

The test seems to have found a shared cache which is unrelated to the test. Perhaps the test should set a cache directory so it does not find unrelated cache files.

SCC stderr INFO: cache name is sharedcc_LOCAL SERVICE
...
SCC stderr Dec 21, 2018 12:23:08 AM net.openj9.sc.api.SharedClassesCacheChecker delete
SCC stderr INFO: Attempting to delete cache: DefaultLocationGroupAccessJavaWL3 and return value from delete call was: 0
SCC stderr Dec 21, 2018 12:23:08 AM net.openj9.sc.api.SharedClassesCacheChecker delete
SCC stderr INFO: Return value means destroyed all caches
SCC stderr Dec 21, 2018 12:23:08 AM net.openj9.sc.api.SharedClassesCacheChecker delete
SCC stderr INFO: Attempting to delete cache: DefaultLocationGroupAccessJavaWL4 and return value from delete call was: 0
SCC stderr Dec 21, 2018 12:23:08 AM net.openj9.sc.api.SharedClassesCacheChecker delete
SCC stderr INFO: Return value means destroyed all caches
SCC stderr Dec 21, 2018 12:23:08 AM net.openj9.sc.api.SharedClassesCacheChecker delete
SCC stderr INFO: Attempting to delete cache: DefaultLocationGroupAccessJavaWL1 and return value from delete call was: 0
SCC stderr Dec 21, 2018 12:23:08 AM net.openj9.sc.api.SharedClassesCacheChecker delete
SCC stderr INFO: Return value means destroyed all caches
SCC ************
SCC DELETION FAILED
SCC ************
SCC stderr Dec 21, 2018 12:23:08 AM net.openj9.sc.api.SharedClassesCacheChecker delete
SCC stderr INFO: Attempting to delete cache: DefaultLocationGroupAccessJavaWL2 and return value from delete call was: 0
SCC stderr Dec 21, 2018 12:23:08 AM net.openj9.sc.api.SharedClassesCacheChecker delete
SCC stderr INFO: Return value means destroyed all caches
SCC stderr Dec 21, 2018 12:23:08 AM net.openj9.sc.api.SharedClassesCacheChecker delete
SCC stderr INFO: Attempting to delete cache: sharedcc_LOCAL SERVICE and return value from delete call was: -2
SCC stderr Dec 21, 2018 12:23:08 AM net.openj9.sc.api.SharedClassesCacheChecker delete
SCC stderr INFO: Return value means DESTROY_FAILED_CURRENT_GEN_CACHE
STF 00:23:08.169 - **FAILED** Process SCC ended with exit code (1) and not the expected exit code/s (0)

openj9-systemtest build should not require JVM_VERSION to be set

This check has recently been added to openj9.build/build.xml:

	<condition property="isOpenJ9" value="true">
		<contains string="${JVM_VERSION}" substring="openj9"/>
	</condition>

This property is used as a guard to not build on platforms where the openj9 features are not available.

However, if a user follows the build instructions for the repository, JVM_VERSION will not be set (I assume this is added by the Jenkins build pipelines?)
The JVM version should be able to be determined from the system properties of the java being used for the build.
Note that there are two types of Java which could be used for building these tests - openjdk-openj9 releases and IBM Java releases, so a suitable property (or properties) should be interrogated to provide the information.

javax_platform property set to ppc on ppcle

openjdk.build/include/top.xml contains a macro <get-platform-arch> which appears to be returning ppc when executing on ppcle, even though the java.os.arch java system property is set correctly to ppcle.

Looking at the code, this may be the issue:

<condition property="@{property}" value="ppcle">
	<and>
		<contains string="@{arch}" substring="ppcle"/>
	</and>
</condition>
<condition property="@{property}" value="ppc">
	<and>
		<contains string="@{arch}" substring="ppc"/>
	</and>
</condition>

The second match for 'ppc' is true whether the arch is 'ppc' or 'ppcle', so the code to set the property to 'ppc' will be run in both cases. What is puzzling though is that I thought properties in ant were immutable, so the setting the property a second time would have no effect. Perhaps setting a property via a macro in this way means that is not true?
We can test this by reversing the two conditions - check for ppc first and then for ppcle.
@Mesbah-Alam - do you have a test environment you could check this theory out on?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.