Skip to content

[dragonwell8][nightly]java/lang/ThreadGroup/NullThreadName.java随机报错Thread group is not destroyed #718

@sendaoYan

Description

@sendaoYan

https://tone.aliyun-inc.com/ws/xesljfzh/test_result/478556?tab=1
【环境准备】

BINARY_URL=oss://compiler-ci-bucket/dragonwell8/CI/tar/20250209-002914-266-#702-linux.aarch64.release.master-d4b60de933eebaf895d4820776c15e81443fcf9f.tar.gz
JTREG_URL=oss://compiler-ci-bucket/jdk/tools/jtreg5.1-b01.zip
JDK_REPO=git@github.com:dragonwell-project/dragonwell8.git
JDK_BRANCH=master
cd ~/tone/tone-matrix-compiler/common;./ossutil.bin_$(arch) -i;cd -
alias oss="~/tone/tone-matrix-compiler/common/ossutil.bin_$(arch) -e oss-cn-hangzhou.aliyuncs.com -u jvm_dev-b  ~/tone/tone-matrix-compiler/common/ossutil_bin/ossutil -o download -f -r"

部署二进制:
oss $BINARY_URL -l ${BINARY_URL##*/}
mkdir bin-dragonwell8;tar -xf ${BINARY_URL##*/} -C bin-dragonwell8

部署jtreg工具:
oss $JTREG_URL -l ${JTREG_URL##*/};unzip ${JTREG_URL##*/}

部署用例repo
git clone -b $JDK_BRANCH $JDK_REPO jdk-repo

执行以下命令:
jtreg  -nr -v:fail,error -w tmp -Xmixed jdk-repo-dragonwell8/jdk/test/java/lang/ThreadGroup/NullThreadName.java

【测试分析】
x64,aarch64的release,fastdebug都有问题,失败率6/50,复现命令

function runJtreg() { jtreg -jdk:bin-d8.23.22/dragonwell-8.23.22/ -Xmixed -ea -esa  -v:fail,error,time,nopass -nr -w $dir/index-$1 $test &> $dir/$1.log ; if [[ 0 -ne $? ]] ; then echo -n "$1 " ; else rm -rf $dir/index-$1 $dir/$1.log ; fi ; } ; export -f runJtreg ; export dir="tmp-jtreg-"`basename ${test##* } .java | sed "s|#|_|"` ; rm -rf $dir ; mkdir -p $dir ; time seq 100 | xargs -i -n 1 -P `nproc` bash -c "runJtreg {}" ; echo total fail number: `ls $dir/*.log 2> /dev/null | wc | awk '{print $1}'`
14 36 48 67 76 88
real    0m26.281s
user    8m46.042s
sys     2m45.862s
total fail number: 6

【对比测试】

release 同样问题
Temurin8 没问题

【用例日志】

STDOUT:
OK, caught expected java.lang.NullPointerException: name cannot be null
Good Thread started...
Good Thread finishing
STDERR:
java.lang.AssertionError: Failed: Thread group is not destroyed.
	at NullThreadName.main(NullThreadName.java:72)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.sun.javatest.regtest.agent.MainWrapper$MainThread.run(MainWrapper.java:127)
	at java.lang.Thread.run(Thread.java:855)

JavaTest Message: Test threw exception: java.lang.AssertionError: Failed: Thread group is not destroyed.
JavaTest Message: shutting down test

【jdk版本】

+bin-d8.23.22/dragonwell-8.23.22/bin/java -version
openjdk version "1.8.0_432"
OpenJDK Runtime Environment (Alibaba Dragonwell Extended Edition 8.23.22) (build 1.8.0_432-b01)
OpenJDK 64-Bit Server VM (Alibaba Dragonwell Extended Edition 8.23.22) (build 25.432-b01, mixed mode)
+ bin-d8.23.22/dragonwell-8.23.22/bin/java -Xinternalversion
OpenJDK 64-Bit Server VM (25.432-b01) for linux-aarch64 JRE (1.8.0_432-b01), built on Dec 13 2024 03:24:58 by "jenkins" with gcc 7.5.0

【系统版本测试】

 uname -a ; cat /etc/os-release ; free -h ; lscpu | head -n 25
Linux CompilerTest-aarch64-3 5.10.134-16.1.al8.aarch64 #1 SMP Thu Dec 7 22:04:51 CST 2023 aarch64 aarch64 aarch64 GNU/Linux
NAME="Alibaba Cloud Linux"
VERSION="3 (Soaring Falcon)"
ID="alinux"
ID_LIKE="rhel fedora centos anolis"
VERSION_ID="3"
UPDATE_ID="9"
PLATFORM_ID="platform:al8"
PRETTY_NAME="Alibaba Cloud Linux 3 (Soaring Falcon)"
ANSI_COLOR="0;31"
HOME_URL="https://www.aliyun.com/"

              total        used        free      shared  buff/cache   available
Mem:          122Gi       1.8Gi       112Gi       2.0Mi       8.6Gi       119Gi
Swap:            0B          0B          0B
Architecture:        aarch64
Byte Order:          Little Endian
CPU(s):              32
On-line CPU(s) list: 0-31
Thread(s) per core:  1
Core(s) per socket:  32
Socket(s):           1
NUMA node(s):        1
Vendor ID:           ARM
Model:               0
Model name:          Neoverse-N2
Stepping:            r0p0
CPU MHz:             3000.000
CPU max MHz:         3000.0000
CPU min MHz:         3000.0000
BogoMIPS:            100.00
L1d cache:           64K
L1i cache:           64K
L2 cache:            1024K
L3 cache:            65536K
NUMA node0 CPU(s):   0-31
Flags:               fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma lrcpc dcpop sha3 sm3 sm4 asimddp sha512 sve asimdfhm dit uscat ilrcpc flagm ssbs sb dcpodp sve2 sveaes svepmull svebitperm svesha3 svesm4 flagm2 frint svei8mm svebf16 i8mm bf16 dgh

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions