You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
안녕하세요,
그동안 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.(java.base@17-ea/URL.java:478)
at jdk.internal.loader.URLClassPath$JarLoader.(java.base@17-ea/URLClassPath.java:722)
at jdk.internal.loader.URLClassPath$3.run(java.base@17-ea/URLClassPath.java:496)
at jdk.internal.loader.URLClassPath$3.run(java.base@17-ea/URLClassPath.java:479)
at java.security.AccessController.executePrivileged(java.base@17-ea/AccessController.java:784)
at java.security.AccessController.doPrivileged(java.base@17-ea/AccessController.java:691)
at jdk.internal.loader.URLClassPath.getLoader(java.base@17-ea/URLClassPath.java:478)
at jdk.internal.loader.URLClassPath.getLoader(java.base@17-ea/URLClassPath.java:447)
- locked <0x00000000fff16ba0> (a jdk.internal.loader.URLClassPath)
at jdk.internal.loader.URLClassPath$1.next(java.base@17-ea/URLClassPath.java:343)
at jdk.internal.loader.URLClassPath$1.hasMoreElements(java.base@17-ea/URLClassPath.java:354)
at jdk.internal.loader.BuiltinClassLoader$1.hasNext(java.base@17-ea/BuiltinClassLoader.java:407)
at jdk.internal.loader.BuiltinClassLoader$1.hasMoreElements(java.base@17-ea/BuiltinClassLoader.java:415)
at java.lang.CompoundEnumeration.next(java.base@17-ea/ClassLoader.java:2719)
at java.lang.CompoundEnumeration.hasMoreElements(java.base@17-ea/ClassLoader.java:2728)
at scouter.util.scan.Scanner.getRoot(Scanner.java:81)
at scouter.util.scan.Scanner.process(Scanner.java:53)
at scouter.util.scan.Scanner.process(Scanner.java:44)
at scouter.agent.counter.CounterExecutingManager.load(CounterExecutingManager.java:114)
at scouter.agent.AgentBoot.boot(AgentBoot.java:37)
- locked <0x00000000ff9199a0> (a java.lang.Class for scouter.agent.AgentBoot)
at scouter.agent.AgentBoot.run(AgentBoot.java:27)
at scouter.agent.util.AsyncRunner.process(AsyncRunner.java:139)
at scouter.agent.util.AsyncRunner.run(AsyncRunner.java:100)
The text was updated successfully, but these errors were encountered:
안녕하세요,
그동안 scouter를 통해 효율적으로 모니터링을 수행하고 있었는데,
최근 특정 환경에서 java agent를 기동했을 때 deadlock 이 발생하여 문의 드립니다.
매번 발생하는 것은 아니고 간헐적으로 서비스 기동 시점에 발생하며 hang이 걸려 서비스가 기동되지 않습니다.
혹시 해당 이슈 원인이나 해결 방안에 대해 답변 주실 수 있으실까요?
감사합니다.
환경
스레드 덤프
"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.(java.base@17-ea/URL.java:478)
at jdk.internal.loader.URLClassPath$JarLoader.(java.base@17-ea/URLClassPath.java:722)
at jdk.internal.loader.URLClassPath$3.run(java.base@17-ea/URLClassPath.java:496)
at jdk.internal.loader.URLClassPath$3.run(java.base@17-ea/URLClassPath.java:479)
at java.security.AccessController.executePrivileged(java.base@17-ea/AccessController.java:784)
at java.security.AccessController.doPrivileged(java.base@17-ea/AccessController.java:691)
at jdk.internal.loader.URLClassPath.getLoader(java.base@17-ea/URLClassPath.java:478)
at jdk.internal.loader.URLClassPath.getLoader(java.base@17-ea/URLClassPath.java:447)
- locked <0x00000000fff16ba0> (a jdk.internal.loader.URLClassPath)
at jdk.internal.loader.URLClassPath$1.next(java.base@17-ea/URLClassPath.java:343)
at jdk.internal.loader.URLClassPath$1.hasMoreElements(java.base@17-ea/URLClassPath.java:354)
at jdk.internal.loader.BuiltinClassLoader$1.hasNext(java.base@17-ea/BuiltinClassLoader.java:407)
at jdk.internal.loader.BuiltinClassLoader$1.hasMoreElements(java.base@17-ea/BuiltinClassLoader.java:415)
at java.lang.CompoundEnumeration.next(java.base@17-ea/ClassLoader.java:2719)
at java.lang.CompoundEnumeration.hasMoreElements(java.base@17-ea/ClassLoader.java:2728)
at scouter.util.scan.Scanner.getRoot(Scanner.java:81)
at scouter.util.scan.Scanner.process(Scanner.java:53)
at scouter.util.scan.Scanner.process(Scanner.java:44)
at scouter.agent.counter.CounterExecutingManager.load(CounterExecutingManager.java:114)
at scouter.agent.AgentBoot.boot(AgentBoot.java:37)
- locked <0x00000000ff9199a0> (a java.lang.Class for scouter.agent.AgentBoot)
at scouter.agent.AgentBoot.run(AgentBoot.java:27)
at scouter.agent.util.AsyncRunner.process(AsyncRunner.java:139)
at scouter.agent.util.AsyncRunner.run(AsyncRunner.java:100)
The text was updated successfully, but these errors were encountered: