Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JITServer AOT cache testing #16366

Merged
merged 1 commit into from
Jan 21, 2023

Conversation

SajinaKandy
Copy link
Contributor

@SajinaKandy SajinaKandy commented Nov 24, 2022

The JITServer AOT cache is currently not covered by the tests. Additional tests are added in the JITServer test suite testJITServer.

-The JITServer and the clients are run with an additional variation with JVM options for using shared class named test_jitscc and the AOT option JITServerUseAOTCache.
-An additional test in the test suite does actions like destroying the cache, recreating it and reusing it.

Issue: #15401

@SajinaKandy SajinaKandy force-pushed the aot_test_jitserver branch 4 times, most recently from 7882912 to 5f520c2 Compare November 24, 2022 20:38
@SajinaKandy
Copy link
Contributor Author

@mpirvu and @llxia , Could you please review the code changes?

@SajinaKandy SajinaKandy force-pushed the aot_test_jitserver branch 2 times, most recently from 561959e to c7a63a9 Compare November 24, 2022 22:05
@llxia
Copy link
Contributor

llxia commented Nov 28, 2022

Grinder: https://openj9-jenkins.osuosl.org/view/Test/job/Grinder/1530/

11:06:28  ===============================================
11:06:28  Running test testJITServer_2 ...
11:06:28  ===============================================
11:06:28  testJITServer_2 Start Time: Mon Nov 28 10:58:33 2022 Epoch Time (ms): 1669651113611
11:06:28  variation: Mode610 -Xshareclasses:name=test_jitscc -XX:+JITServerUseAOTCache
11:06:28  JVM_OPTIONS:  -Xcompressedrefs -Xjit -Xgcpolicy:gencon -Xshareclasses:name=test_jitscc -XX:+JITServerUseAOTCache 
11:06:28  { \
11:06:28  echo "";	echo "TEST SETUP:"; \
11:06:28  "/home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java" -Xshareclasses:destroyAll; "/home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java" -Xshareclasses:groupAccess,destroyAll; echo "cache cleanup done"; \
11:06:28  mkdir -p "/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2"; \
11:06:28  cd "/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2"; \
11:06:28  echo "";	echo "TESTING:"; \
11:06:28  if [ -x "/home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/jitserver" ]; \
11:06:28  then \
11:06:28  	"/home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java" \
11:06:28  	-cp "/home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/TestConfig/resources:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/testng.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/jcommander.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar" \
11:06:28  	-DSERVER_EXE="/home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/jitserver" \
11:06:28  	-DCLIENT_EXE="/home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java" \
11:06:28  	-DCLIENT_PROGRAM=' -Xcompressedrefs -Xjit -Xgcpolicy:gencon -Xshareclasses:name=test_jitscc -XX:+JITServerUseAOTCache  -cp /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/TestConfig/resources:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/testng.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/jcommander.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar -DjarTesterArgs="-loopforever /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar" org.testng.TestNG -d "/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2"/client /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/testng.xml -testnames JarTesterTest -groups level.sanity -excludegroups d.*.linux_x86-64,d.*.arch.x86,d.*.os.linux,d.*.bits.64,d.*.generic-all' \
11:06:28  	org.testng.TestNG \
11:06:28  	-d "/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2" \
11:06:28  	"/home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/testng.xml" \
11:06:28  	-testnames JITServerTest \
11:06:28  	-groups level.sanity \
11:06:28  	-excludegroups d.*.linux_x86-64,d.*.arch.x86,d.*.os.linux,d.*.bits.64,d.*.generic-all; \
11:06:28  else \
11:06:28  	echo; \
11:06:28  	echo "/home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/jitserver doesn't exist; assuming this JDK does not support JITServer and trivially passing the test."; \
11:06:28  fi; \
11:06:28  if [ $? -eq 0 ]; then echo "-----------------------------------"; echo "testJITServer_2""_PASSED"; echo "-----------------------------------"; cd /home/jenkins/workspace/Grinder/aqa-tests/TKG/..; rm -f -r "/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2"; else echo "-----------------------------------"; echo "testJITServer_2""_FAILED"; echo "-----------------------------------"; fi; \
11:06:28  echo "";	echo "TEST TEARDOWN:"; \
11:06:28  "/home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java" -Xshareclasses:destroyAll; "/home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java" -Xshareclasses:groupAccess,destroyAll; echo "cache cleanup done"; \
11:06:28   } 2>&1 | tee -a "/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/TestTargetResult";
11:06:28  
11:06:28  TEST SETUP:
11:06:28  JVMSHRC005I No shared class caches available
11:06:28  JVMSHRC005I No shared class caches available
11:06:28  cache cleanup done
11:06:28  
11:06:28  TESTING:
11:06:28  [IncludeExcludeTestAnnotationTransformer] [INFO] EXCLUDE_FILE environment variable: /home/jenkins/workspace/Grinder/aqa-tests/TKG/../TestConfig/resources/excludes/latest_exclude_11.txt
11:06:28  [IncludeExcludeTestAnnotationTransformer] [INFO] Processing exclude file: /home/jenkins/workspace/Grinder/aqa-tests/TKG/../TestConfig/resources/excludes/latest_exclude_11.txt
11:06:28  ...
11:06:28  ... TestNG 6.14.2 by Cédric Beust (cedric@beust.com)
11:06:28  ...
11:06:28  
11:06:28  [JITServerTest] [INFO] running testServer: INFO and above level logging enabled
11:06:28  [JITServerTest] [INFO] Chose random port for server: -XX:JITServerPort=37195, set JITServerTest_SERVER_PORT in your env to override.
11:06:28  [JITServerTest] [INFO] Starting server with command line:
11:06:28  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/jitserver -XX:JITServerPort=37195 -XX:+JITServerUseAOTCache
11:06:28  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:06:28  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServer.server.out
11:06:35  [JITServerTest] [INFO] Starting client with command line:
11:06:35  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java -XX:JITServerPort=37195 -XX:+UseJITServer -Xcompressedrefs -Xjit -Xgcpolicy:gencon -Xshareclasses:name=test_jitscc -XX:+JITServerUseAOTCache -cp /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/TestConfig/resources:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/testng.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/jcommander.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar "-DjarTesterArgs=-loopforever /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar" org.testng.TestNG -d /home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2/client /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/testng.xml -testnames JarTesterTest -groups level.sanity -excludegroups d.*.linux_x86-64,d.*.arch.x86,d.*.os.linux,d.*.bits.64,d.*.generic-all
11:06:35  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:06:35  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServer.client.out
11:06:37  [JITServerTest] [INFO] Waiting for 45000 millis.
11:07:26  [JITServerTest] [INFO] Stopping client...
11:07:26  [JITServerTest] [INFO] Stopping server...
11:07:26  [JITServerTest] [INFO] running testServerComesUpAfterClient: INFO and above level logging enabled
11:07:26  [JITServerTest] [INFO] Chose random port for server: -XX:JITServerPort=52449, set JITServerTest_SERVER_PORT in your env to override.
11:07:26  [JITServerTest] [INFO] Starting client with command line:
11:07:26  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java -XX:JITServerPort=52449 -XX:+UseJITServer -Xcompressedrefs -Xjit -Xgcpolicy:gencon -Xshareclasses:name=test_jitscc -XX:+JITServerUseAOTCache -cp /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/TestConfig/resources:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/testng.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/jcommander.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar "-DjarTesterArgs=-loopforever /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar" org.testng.TestNG -d /home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2/client /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/testng.xml -testnames JarTesterTest -groups level.sanity -excludegroups d.*.linux_x86-64,d.*.arch.x86,d.*.os.linux,d.*.bits.64,d.*.generic-all
11:07:26  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:07:26  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerComesUpAfterClient.client.out
11:07:26  [JITServerTest] [INFO] Waiting for 45000 millis.
11:08:09  [JITServerTest] [INFO] Starting server with command line:
11:08:09  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/jitserver -XX:JITServerPort=52449 -XX:+JITServerUseAOTCache
11:08:09  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:08:09  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerComesUpAfterClient.server.out
11:08:17  [JITServerTest] [INFO] Waiting for 45000 millis.
11:09:08  [JITServerTest] [INFO] Stopping client...
11:09:08  [JITServerTest] [INFO] Stopping server...
11:09:08  [JITServerTest] [INFO] running testServerComesUpAfterClientAndGoesDownAgain: INFO and above level logging enabled
11:09:08  [JITServerTest] [INFO] Chose random port for server: -XX:JITServerPort=47497, set JITServerTest_SERVER_PORT in your env to override.
11:09:08  [JITServerTest] [INFO] Starting client with command line:
11:09:08  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java -XX:JITServerPort=47497 -XX:+UseJITServer -Xcompressedrefs -Xjit -Xgcpolicy:gencon -Xshareclasses:name=test_jitscc -XX:+JITServerUseAOTCache -cp /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/TestConfig/resources:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/testng.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/jcommander.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar "-DjarTesterArgs=-loopforever /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar" org.testng.TestNG -d /home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2/client /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/testng.xml -testnames JarTesterTest -groups level.sanity -excludegroups d.*.linux_x86-64,d.*.arch.x86,d.*.os.linux,d.*.bits.64,d.*.generic-all
11:09:08  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:09:08  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerComesUpAfterClientAndGoesDownAgain.client.out
11:09:08  [JITServerTest] [INFO] Waiting for 45000 millis.
11:09:52  [JITServerTest] [INFO] Starting server with command line:
11:09:52  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/jitserver -XX:JITServerPort=47497 -XX:+JITServerUseAOTCache
11:09:52  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:09:52  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerComesUpAfterClientAndGoesDownAgain.server.out
11:09:55  [JITServerTest] [INFO] Waiting for 45000 millis.
11:10:46  [JITServerTest] [INFO] Stopping server...
11:10:46  [JITServerTest] [INFO] Waiting for 45000 millis.
11:11:27  [JITServerTest] [INFO] Stopping client...
11:11:27  [JITServerTest] [INFO] running testServerGoesDown: INFO and above level logging enabled
11:11:27  [JITServerTest] [INFO] Chose random port for server: -XX:JITServerPort=48925, set JITServerTest_SERVER_PORT in your env to override.
11:11:27  [JITServerTest] [INFO] Starting server with command line:
11:11:27  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/jitserver -XX:JITServerPort=48925 -XX:+JITServerUseAOTCache
11:11:27  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:11:27  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerGoesDown.server.out
11:11:34  [JITServerTest] [INFO] Starting client with command line:
11:11:34  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java -XX:JITServerPort=48925 -XX:+UseJITServer -Xcompressedrefs -Xjit -Xgcpolicy:gencon -Xshareclasses:name=test_jitscc -XX:+JITServerUseAOTCache -cp /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/TestConfig/resources:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/testng.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/jcommander.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar "-DjarTesterArgs=-loopforever /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar" org.testng.TestNG -d /home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2/client /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/testng.xml -testnames JarTesterTest -groups level.sanity -excludegroups d.*.linux_x86-64,d.*.arch.x86,d.*.os.linux,d.*.bits.64,d.*.generic-all
11:11:34  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:11:34  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerGoesDown.client.out
11:11:35  [JITServerTest] [INFO] Waiting for 45000 millis.
11:12:23  [JITServerTest] [INFO] Stopping server...
11:12:23  [JITServerTest] [INFO] Waiting for 45000 millis.
11:13:05  [JITServerTest] [INFO] Stopping client...
11:13:05  [JITServerTest] [INFO] running testServerGoesDownAnotherComesUp: INFO and above level logging enabled
11:13:05  [JITServerTest] [INFO] Chose random port for server: -XX:JITServerPort=36762, set JITServerTest_SERVER_PORT in your env to override.
11:13:05  [JITServerTest] [INFO] Starting server with command line:
11:13:05  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/jitserver -XX:JITServerPort=36762 -XX:+JITServerUseAOTCache
11:13:05  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:13:05  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerGoesDownAnotherComesUp.server.out
11:13:12  [JITServerTest] [INFO] Starting client with command line:
11:13:12  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java -XX:JITServerPort=36762 -XX:+UseJITServer -Xcompressedrefs -Xjit -Xgcpolicy:gencon -Xshareclasses:name=test_jitscc -XX:+JITServerUseAOTCache -cp /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/TestConfig/resources:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/testng.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/jcommander.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar "-DjarTesterArgs=-loopforever /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar" org.testng.TestNG -d /home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2/client /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/testng.xml -testnames JarTesterTest -groups level.sanity -excludegroups d.*.linux_x86-64,d.*.arch.x86,d.*.os.linux,d.*.bits.64,d.*.generic-all
11:13:12  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:13:12  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerGoesDownAnotherComesUp.client.out
11:13:14  [JITServerTest] [INFO] Waiting for 45000 millis.
11:14:03  [JITServerTest] [INFO] Stopping server...
11:14:03  [JITServerTest] [INFO] Waiting for 45000 millis.
11:14:45  [JITServerTest] [INFO] Starting server with command line:
11:14:45  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/jitserver -XX:JITServerPort=36762 -XX:+JITServerUseAOTCache
11:14:45  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:14:45  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerGoesDownAnotherComesUp.secondServer.out
11:14:52  [JITServerTest] [INFO] Waiting for 45000 millis.
11:15:40  [JITServerTest] [INFO] Stopping client...
11:15:40  [JITServerTest] [INFO] Stopping server...
11:15:40  [JITServerTest] [INFO] running testServerSCC: INFO and above level logging enabled
11:15:40  [JITServerTest] [INFO] Chose random port for server: -XX:JITServerPort=59716, set JITServerTest_SERVER_PORT in your env to override.
11:15:40  [JITServerTest] [INFO] Starting server with command line:
11:15:40  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/jitserver -XX:JITServerPort=59716 -XX:+JITServerUseAOTCache
11:15:40  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:15:40  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerSCC.server.out
11:15:43  [JITServerTest] [INFO] Starting client with command line:
11:15:43  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java -XX:JITServerPort=59716 -XX:+UseJITServer -Xcompressedrefs -Xjit -Xgcpolicy:gencon -Xshareclasses:name=test_jitscc -XX:+JITServerUseAOTCache -cp /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/TestConfig/resources:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/testng.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/jcommander.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar "-DjarTesterArgs=-loopforever /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar" org.testng.TestNG -d /home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2/client /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/testng.xml -testnames JarTesterTest -groups level.sanity -excludegroups d.*.linux_x86-64,d.*.arch.x86,d.*.os.linux,d.*.bits.64,d.*.generic-all
11:15:43  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:15:43  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerSCC.client.out
11:15:46  [JITServerTest] [INFO] Waiting for 45000 millis.
11:16:36  [JITServerTest] [INFO] test_jitscc         Java11 64-bit  persistent      cr       0                                    In use
11:16:36  [JITServerTest] [INFO] # AOT Methods                        = 822
11:16:36  [JITServerTest] [INFO] Check if AOT methods exists in the cache test_jitscc::true
11:16:36  [JITServerTest] [INFO] Stopping client...
11:16:36  [JITServerTest] [INFO] Waiting for 45000 millis.
11:17:19  [JITServerTest] [INFO] test_jitscc         Java11 64-bit  persistent      cr       0                                    Mon Nov 28 11:08:40 2022
11:17:19  [JITServerTest] [INFO] Check whether the cache test_jitscc exists::true
11:17:19  [JITServerTest] [INFO] Restarting client...
11:17:19  [JITServerTest] [INFO] Starting client with command line:
11:17:19  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java -XX:JITServerPort=59716 -XX:+UseJITServer -Xcompressedrefs -Xjit -Xgcpolicy:gencon -Xshareclasses:name=test_jitscc -XX:+JITServerUseAOTCache -cp /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/TestConfig/resources:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/testng.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/jcommander.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar "-DjarTesterArgs=-loopforever /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar" org.testng.TestNG -d /home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2/client /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/testng.xml -testnames JarTesterTest -groups level.sanity -excludegroups d.*.linux_x86-64,d.*.arch.x86,d.*.os.linux,d.*.bits.64,d.*.generic-all
11:17:19  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:17:19  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerSCC.client.out
11:17:19  [JITServerTest] [INFO] Waiting for 45000 millis.
11:18:07  [JITServerTest] [INFO] Destroy the cache test_jitscc
11:18:07  [JITServerTest] [INFO] JVMSHRC806I Compressed references persistent shared cache "test_jitscc" has been destroyed. Use option -Xnocompressedrefs if you want to destroy a non-compressed references cache.
11:18:49  [JITServerTest] [INFO] Stopping client...
11:18:49  [JITServerTest] [INFO] Waiting for 45000 millis.
11:19:37  [JITServerTest] [INFO] Check whether the cache test_jitscc exists::false
11:19:37  [JITServerTest] [INFO] Restarting client...
11:19:37  [JITServerTest] [INFO] Starting client with command line:
11:19:37  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java -XX:JITServerPort=59716 -XX:+UseJITServer -Xcompressedrefs -Xjit -Xgcpolicy:gencon -Xshareclasses:name=test_jitscc -XX:+JITServerUseAOTCache -cp /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/TestConfig/resources:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/testng.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/jcommander.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar "-DjarTesterArgs=-loopforever /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar" org.testng.TestNG -d /home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2/client /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/testng.xml -testnames JarTesterTest -groups level.sanity -excludegroups d.*.linux_x86-64,d.*.arch.x86,d.*.os.linux,d.*.bits.64,d.*.generic-all
11:19:37  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:19:37  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerSCC.client.out
11:19:37  [JITServerTest] [INFO] Waiting for 45000 millis.
11:20:24  [JITServerTest] [INFO] test_jitscc         Java11 64-bit  persistent      cr       0                                    In use
11:20:24  [JITServerTest] [INFO] Check whether the cache test_jitscc exists::true
11:20:24  [JITServerTest] [INFO] Stopping client...
11:20:24  [JITServerTest] [INFO] Stopping server...
11:20:24  [JITServerTest] [INFO] running testServerUnreachableForAWhile: INFO and above level logging enabled
11:20:24  [JITServerTest] [INFO] Chose random port for server: -XX:JITServerPort=49525, set JITServerTest_SERVER_PORT in your env to override.
11:20:24  [JITServerTest] [INFO] Starting server with command line:
11:20:24  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/jitserver -XX:JITServerPort=49525 -XX:+JITServerUseAOTCache
11:20:24  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:20:24  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerUnreachableForAWhile.server.out
11:20:28  [JITServerTest] [INFO] Starting client with command line:
11:20:28  /home/jenkins/workspace/Grinder/openjdkbinary/j2sdk-image/bin/java -XX:JITServerPort=49525 -XX:+UseJITServer -Xcompressedrefs -Xjit -Xgcpolicy:gencon -Xshareclasses:name=test_jitscc -XX:+JITServerUseAOTCache -cp /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/TestConfig/resources:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/testng.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/lib/jcommander.jar:/home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar "-DjarTesterArgs=-loopforever /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/jitt.jar" org.testng.TestNG -d /home/jenkins/workspace/Grinder/aqa-tests/TKG/../TKG/output_16696495858251/testJITServer_2/client /home/jenkins/workspace/Grinder/aqa-tests/TKG/../../jvmtest/functional/JIT_Test/testng.xml -testnames JarTesterTest -groups level.sanity -excludegroups d.*.linux_x86-64,d.*.arch.x86,d.*.os.linux,d.*.bits.64,d.*.generic-all
11:20:28  [JITServerTest] [INFO] With stdout/stderr redirected to:
11:20:28  /home/jenkins/workspace/Grinder/aqa-tests/TKG/output_16696495858251/testJITServer_2/testServerUnreachableForAWhile.client.out
11:20:31  [JITServerTest] [INFO] Waiting for 45000 millis.
11:21:18  [JITServerTest] [INFO] Pausing server for 10000 millis.
11:21:27  [JITServerTest] [INFO] Resuming server...
11:21:27  [JITServerTest] [INFO] Waiting for 45000 millis.
11:22:16  [JITServerTest] [INFO] Stopping server...
11:22:16  [JITServerTest] [INFO] Waiting for 45000 millis.
11:22:57  [JITServerTest] [INFO] Stopping client...
11:22:57  PASSED: testServer
11:22:57  PASSED: testServerComesUpAfterClient
11:22:57  PASSED: testServerComesUpAfterClientAndGoesDownAgain
11:22:57  PASSED: testServerGoesDown
11:22:57  PASSED: testServerGoesDownAnotherComesUp
11:22:57  PASSED: testServerSCC
11:22:57  PASSED: testServerUnreachableForAWhile
11:22:57  
11:22:57  ===============================================
11:22:57      JITServerTest
11:22:57      Tests run: 7, Failures: 0, Skips: 0
11:22:57  ===============================================
11:22:57  
11:22:57  
11:22:57  ===============================================
11:22:57  JIT_Test suite
11:22:57  Total tests run: 7, Failures: 0, Skips: 0
11:22:57  ===============================================
11:22:57  
11:22:57  -----------------------------------
11:22:57  testJITServer_2_PASSED
11:22:57  -----------------------------------

Copy link
Contributor

@llxia llxia left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@llxia llxia requested a review from mpirvu November 28, 2022 16:36
@mpirvu
Copy link
Contributor

mpirvu commented Nov 28, 2022

We need to make sure that the AOT compilations come from the server and moreover from its AOT cache. One way to check that is to generate a verbose log and to look for "remote" and "deserialized" on the lines that denote compilation ends.
Alternatively, we can add some statistics in CompilationThread.cpp stopCompilationThreads() that would be printed to stderr and parsed by the test harness.

@SajinaKandy SajinaKandy force-pushed the aot_test_jitserver branch 2 times, most recently from 49ee381 to 0779ebc Compare December 21, 2022 16:34
@mpirvu mpirvu added this to In progress in JIT as a Service via automation Jan 9, 2023
@SajinaKandy SajinaKandy force-pushed the aot_test_jitserver branch 2 times, most recently from afcd840 to 1b9fe45 Compare January 10, 2023 17:09
@SajinaKandy SajinaKandy force-pushed the aot_test_jitserver branch 2 times, most recently from 369d90d to 1061645 Compare January 10, 2023 20:26
Copy link
Contributor

@mpirvu mpirvu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@mpirvu
Copy link
Contributor

mpirvu commented Jan 10, 2023

jenkins test sanity zlinux jdk17

@mpirvu
Copy link
Contributor

mpirvu commented Jan 10, 2023

@ymanton Since this PR touches some of the code you originally wrote, could you please review it as well? Thanks

@mpirvu
Copy link
Contributor

mpirvu commented Jan 11, 2023

The test fails because there are some CLIENT_TEST_TIME_MS1 left in the code

@mpirvu
Copy link
Contributor

mpirvu commented Jan 11, 2023

jenkins test sanity zlinux jdk17

Copy link
Member

@ymanton ymanton left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

@mpirvu
Copy link
Contributor

mpirvu commented Jan 11, 2023

The test failed on zLinux with

FAILED: testServerSCC
java.lang.AssertionError: This part of the test currently works only for UNIX environment

Strange that Linux on Z is not detected as an UNIX environment

@mpirvu
Copy link
Contributor

mpirvu commented Jan 11, 2023

Also, I now think that testServerSCC should be renamed testServerAOTCache because that's what we really test here.

@mpirvu
Copy link
Contributor

mpirvu commented Jan 11, 2023

I ran a grinder on xlinux and I found the same failure:

13:10:55  FAILED: testServerSCC
13:10:55  java.lang.AssertionError: This part of the test currently works only for UNIX environment

@mpirvu
Copy link
Contributor

mpirvu commented Jan 13, 2023

jenkins test sanity zlinux jdk17

@mpirvu
Copy link
Contributor

mpirvu commented Jan 13, 2023

The test fails on zLinux with

PASSED: testServer
PASSED: testServerComesUpAfterClient
PASSED: testServerComesUpAfterClientAndGoesDownAgain
PASSED: testServerGoesDown
PASSED: testServerGoesDownAnotherComesUp
PASSED: testServerUnreachableForAWhile
FAILED: testServerAOTCache
java.lang.AssertionError: There are no deserialized methods at the client.

I also realized that in testJITServer_2 all tests are executed with -XX:+JITServerUseAOTCache not just testServerAOTCache.
Maybe that's not a bad thing, but we definitely don't check that serialized methods exist.

The JITServer AOT cache is currently not covered by the tests. Additional tests are added in the JITServer test suite testJITServer.

-The JITServer and the clients are run with an additional variation with JVM options for using shared class named test_jitscc and the AOT option JITServerUseAOTCache.
-An additional test in the test suite does actions like destroying the cache, recreating it and reusing it.

Closes: eclipse-openj9#15401

Signed-off-by:"SajinaKandy” <“sajina.kandy@ibm.com”>
@mpirvu
Copy link
Contributor

mpirvu commented Jan 20, 2023

jenkins test sanity zlinux jdk17

@mpirvu mpirvu merged commit d18a29d into eclipse-openj9:master Jan 21, 2023
JIT as a Service automation moved this from In progress to Done Jan 21, 2023
@mpirvu mpirvu changed the title WIP:JITServer AOT cache testing JITServer AOT cache testing Jan 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

Successfully merging this pull request may close these issues.

None yet

4 participants