java/lang/runtime/ReferencedKeyTest.java fails for ShenandoahGC
Leslie Zhai
zhaixiang at loongson.cn
Mon Jul 17 02:00:46 UTC 2023
Hi,
ACTION: main -- Failed. Execution failed: `main' threw exception: java.lang.ClassCastException: class java.lang.runtime.SoftReferenceKey cannot be cast to class java.lang.runtime.WeakReferenceKey (java.lang.runtime.SoftReferenceKey and java.lang.runtime.WeakReferenceKey are in module java.base of loader 'bootstrap')
REASON: User specified action: run main/othervm --patch-module java.base=${test.class.path} java.lang.runtime.ReferencedKeyTest TIME: 0.664 seconds
messages:
command: main --patch-module java.base=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_runtime_ReferencedKeyTest_java/classes/0/java/lang/runtime/ReferencedKeyTest.d java.lang.runtime.ReferencedKeyTest
reason: User specified action: run main/othervm --patch-module java.base=${test.class.path} java.lang.runtime.ReferencedKeyTest started: Mon Jul 17 09:42:37 CST 2023
Mode: othervm [/othervm specified]
Additional options from @modules: --add-modules java.base --add-exports java.base/java.lang.runtime=ALL-UNNAMED
finished: Mon Jul 17 09:42:38 CST 2023
elapsed time (seconds): 0.664
configuration:
Boot Layer
add modules: java.base add exports: java.base/java.lang.runtime ALL-UNNAMED
patch: java.base /mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_runtime_ReferencedKeyTest_java/classes/0/java/lang/runtime/ReferencedKeyTest.d
STDOUT:
STDERR:
java.lang.ClassCastException: class java.lang.runtime.SoftReferenceKey cannot be cast to class java.lang.runtime.WeakReferenceKey (java.lang.runtime.SoftReferenceKey and java.lang.runtime.WeakReferenceKey are in module java.base of loader 'bootstrap')
at java.base/java.lang.runtime.ReferencedKeyMap.removeStaleReferences(ReferencedKeyMap.java:326)
at java.base/java.lang.runtime.ReferencedKeyMap.put(ReferencedKeyMap.java:209)
at java.base/java.lang.runtime.ReferencedKeyTest.populate(ReferencedKeyTest.java:106)
at java.base/java.lang.runtime.ReferencedKeyTest.mapTest(ReferencedKeyTest.java:61)
at java.base/java.lang.runtime.ReferencedKeyTest.main(ReferencedKeyTest.java:45)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138)
at java.base/java.lang.Thread.run(Thread.java:1570)
JavaTest Message: Test threw exception: java.lang.ClassCastException: class java.lang.runtime.SoftReferenceKey cannot be cast to class java.lang.runtime.WeakReferenceKey (java.lang.runtime.SoftReferenceKey and java.lang.runtime.WeakReferenceKey are in module java.base of loader 'bootstrap')
JavaTest Message: shutting down test
STATUS:Failed.`main' threw exception: java.lang.ClassCastException: class java.lang.runtime.SoftReferenceKey cannot be cast to class java.lang.runtime.WeakReferenceKey (java.lang.runtime.SoftReferenceKey and java.lang.runtime.WeakReferenceKey are in module java.base of loader 'bootstrap')
rerun:
cd /mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_runtime_ReferencedKeyTest_java/scratch/0 && \
HOME=/home/loongson \
LANG=zh_CN.UTF-8 \
LC_ALL=C \
PATH=/bin:/usr/bin:/usr/sbin \
TEST_IMAGE_DIR=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/images/test \
_JVM_DWARF_PATH=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/images/symbols \
CLASSPATH=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_runtime_ReferencedKeyTest_java/classes/0/java/lang/runtime/ReferencedKeyTest.d:/mnt/repo/openjdk/jdk/test/jdk/java/lang/runtime:/mnt/download/jtreg/lib/javatest.jar:/mnt/download/jtreg/lib/jtreg.jar \
/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/images/jdk/bin/java \
-Dtest.vm.opts='-Xmx768m -XX:MaxRAMPercentage=4.16667 -Dtest.boot.jdk=/mnt/download/jdk-20.0.1 -Djava.io.tmpdir=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_runtime_ReferencedKeyTest_java/tmp -XX:+UseShenandoahGC -ea -esa' \
-Dtest.tool.vm.opts='-J-Xmx768m -J-XX:MaxRAMPercentage=4.16667 -J-Dtest.boot.jdk=/mnt/download/jdk-20.0.1 -J-Djava.io.tmpdir=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_runtime_ReferencedKeyTest_java/tmp -J-XX:+UseShenandoahGC -J-ea -J-esa' \
-Dtest.compiler.opts= \
-Dtest.java.opts= \
-Dtest.jdk=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/images/jdk \
-Dcompile.jdk=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/images/jdk \
-Dtest.timeout.factor=4.0 \
-Dtest.nativepath=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/images/test/jdk/jtreg/native \
-Dtest.root=/mnt/repo/openjdk/jdk/test/jdk \
-Dtest.name=java/lang/runtime/ReferencedKeyTest.java \
-Dtest.file=/mnt/repo/openjdk/jdk/test/jdk/java/lang/runtime/ReferencedKeyTest.java \
-Dtest.src=/mnt/repo/openjdk/jdk/test/jdk/java/lang/runtime \
-Dtest.src.path=/mnt/repo/openjdk/jdk/test/jdk/java/lang/runtime \
-Dtest.classes=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_runtime_ReferencedKeyTest_java/classes/0/java/lang/runtime/ReferencedKeyTest.d \
-Dtest.class.path=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_runtime_ReferencedKeyTest_java/classes/0/java/lang/runtime/ReferencedKeyTest.d \
-Dtest.class.path.prefix=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_runtime_ReferencedKeyTest_java/classes/0/java/lang/runtime/ReferencedKeyTest.d:/mnt/repo/openjdk/jdk/test/jdk/java/lang/runtime \
-Dtest.modules=java.base/java.lang.runtime \
-Dtest.enable.preview=true \
--add-modules java.base \
--add-exports java.base/java.lang.runtime=ALL-UNNAMED \
-Xmx768m \
-XX:MaxRAMPercentage=4.16667 \
-Dtest.boot.jdk=/mnt/download/jdk-20.0.1 \
-Djava.io.tmpdir=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_runtime_ReferencedKeyTest_java/tmp \
-XX:+UseShenandoahGC \
-ea \
-esa \
-Djava.library.path=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/images/test/jdk/jtreg/native \
--patch-module java.base=/mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_runtime_ReferencedKeyTest_java/classes/0/java/lang/runtime/ReferencedKeyTest.d \
--enable-preview \
com.sun.javatest.regtest.agent.MainWrapper /mnt/repo/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_runtime_ReferencedKeyTest_java/java/lang/runtime/ReferencedKeyTest.d/main.0.jta
But -XX:+UseZGC -XX:+ZGenerational is not able to reproduce the issue.
And java/lang/ScopedValue/StressStackOverflow.java also fails for ShenandoahGC.
I am investigating the root cause if no one worked on it yet.
Thanks,
Leslie Zhai
More information about the shenandoah-dev
mailing list