scouter
scouter copied to clipboard
deadlock 발생 이슈 문의드립니다
안녕하세요, 그동안 scouter를 통해 효율적으로 모니터링을 수행하고 있었는데, 최근 특정 환경에서 java agent를 기동했을 때 deadlock 이 발생하여 문의 드립니다.
매번 발생하는 것은 아니고 간헐적으로 서비스 기동 시점에 발생하며 hang이 걸려 서비스가 기동되지 않습니다. 혹시 해당 이슈 원인이나 해결 방안에 대해 답변 주실 수 있으실까요? 감사합니다.
환경
- jdk 17
- springboot 3.2.2
- scouter java agent 2.17.1
스레드 덤프 "main": at jdk.internal.loader.URLClassPath.getLoader(java.base@17-ea/URLClassPath.java:425) - waiting to lock <0x00000000fff16ba0> (a jdk.internal.loader.URLClassPath) at jdk.internal.loader.URLClassPath.getResource(java.base@17-ea/URLClassPath.java:316) at jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(java.base@17-ea/BuiltinClassLoader.java:750) at jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(java.base@17-ea/BuiltinClassLoader.java:676) - locked <0x00000000fd118508> (a java.lang.Object) at jdk.internal.loader.BuiltinClassLoader.loadClass(java.base@17-ea/BuiltinClassLoader.java:634) at jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(java.base@17-ea/ClassLoaders.java:182) at java.lang.ClassLoader.loadClass(java.base@17-ea/ClassLoader.java:519) at org.springframework.boot.loader.net.protocol.jar.JarUrl.create(JarUrl.java:74) at org.springframework.boot.loader.net.protocol.jar.JarUrl.create(JarUrl.java:61) at org.springframework.boot.loader.net.protocol.jar.JarUrl.create(JarUrl.java:51) at org.springframework.boot.loader.launch.JarFileArchive.getNestedJarUrl(JarFileArchive.java:100) at org.springframework.boot.loader.launch.JarFileArchive$$Lambda$69/0x0000000800c06b28.apply(Unknown Source) at java.util.stream.ReferencePipeline$3$1.accept(java.base@17-ea/ReferencePipeline.java:197) at java.util.stream.ReferencePipeline$2$1.accept(java.base@17-ea/ReferencePipeline.java:179) at java.util.stream.ReferencePipeline$3$1.accept(java.base@17-ea/ReferencePipeline.java:197) at java.util.zip.ZipFile$EntrySpliterator.tryAdvance(java.base@17-ea/ZipFile.java:556) - locked <0x00000000fd2223d0> (a java.util.jar.JarFile) at java.util.Spliterator.forEachRemaining(java.base@17-ea/Spliterator.java:326) at java.util.stream.AbstractPipeline.copyInto(java.base@17-ea/AbstractPipeline.java:484) at java.util.stream.AbstractPipeline.wrapAndCopyInto(java.base@17-ea/AbstractPipeline.java:474) at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(java.base@17-ea/ReduceOps.java:913) at java.util.stream.AbstractPipeline.evaluate(java.base@17-ea/AbstractPipeline.java:234) at java.util.stream.ReferencePipeline.collect(java.base@17-ea/ReferencePipeline.java:682) at org.springframework.boot.loader.launch.JarFileArchive.getClassPathUrls(JarFileArchive.java:90) at org.springframework.boot.loader.launch.ExecutableArchiveLauncher.getClassPathUrls(ExecutableArchiveLauncher.java:102) at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:50) at org.springframework.boot.loader.launch.JarLauncher.main(JarLauncher.java:58)
"Scouter-AsyncRunner":
at java.lang.Class.getDeclaredConstructors0(java.base@17-ea/Native Method)
at java.lang.Class.privateGetDeclaredConstructors(java.base@17-ea/Class.java:3318)
at java.lang.Class.getConstructor0(java.base@17-ea/Class.java:3523)
at java.lang.Class.newInstance(java.base@17-ea/Class.java:623)
at java.net.URL.lookupViaProperty(java.base@17-ea/URL.java:1290)
at java.net.URL.getURLStreamHandler(java.base@17-ea/URL.java:1440)
at java.net.URL.