UnitTestBot / UnitTestBot/usvm
Duplicate class definition for name: "org/slf4j/impl/StaticLoggerBinder"
Open
@DaniilStepanov is already working on this.
Since Nov 23, 2023.
bug
- Dominant language
- Kotlin
- Stars
- 33
- Forks
- 27
- Avg merge
- 4d 3h
- Merged PRs (30d)
- 15
Description
Run ContestEstimator with the following settings:
timeLimit = 60
methodFilter = "io.seata.core.protocol.MergedWarpMessage.doDecode"
projectFilter = listOf("seata-core-0.5.0")
USVM instrumentation fails before method under test call with following errors (second error is then repeated over 100 times):
16:52:08.950 | WARN | Execution failed before method under test call on (id:23)io.seata.core.protocol.MergedWarpMessage#doDecode(java.nio.ByteBuffer)
java.lang.LinkageError: loader (instance of org/usvm/instrumentation/classloader/WorkerClassLoader): attempted duplicate class definition for name: "org/slf4j/impl/StaticLoggerBinder"
at org.slf4j.LoggerFactory.bind(LoggerFactory.java:150) ~[slf4j-api-1.7.36.jar:1.7.36]
at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:124) ~[slf4j-api-1.7.36.jar:1.7.36]
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:417) ~[slf4j-api-1.7.36.jar:1.7.36]
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:362) ~[slf4j-api-1.7.36.jar:1.7.36]
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:388) ~[slf4j-api-1.7.36.jar:1.7.36]
at io.seata.core.protocol.MergedWarpMessage.<clinit>(MergedWarpMessage.java:44) ~[?:?]
at java.lang.Class.forName0(Native Method) ~[?:1.8.0_392]
at java.lang.Class.forName(Class.java:348) ~[?:1.8.0_392]
at org.usvm.instrumentation.util.JacodbKt.findClassInLoader(Jacodb.kt:112) ~[usvm-jvm-instrumentation-comp-231122-1058.jar:?]
at org.usvm.instrumentation.util.JacodbKt.toJavaClass(Jacodb.kt:108) ~[usvm-jvm-instrumentation-comp-231122-1058.jar:?]
16:52:09.157 | WARN | Execution failed before method under test call on (id:23)io.seata.core.protocol.MergedWarpMessage#doDecode(java.nio.ByteBuffer)
java.lang.NoClassDefFoundError: Could not initialize class io.seata.core.protocol.MergedWarpMessage
at java.lang.Class.forName0(Native Method) ~[?:1.8.0_392]
at java.lang.Class.forName(Class.java:348) ~[?:1.8.0_392]
at org.usvm.instrumentation.util.JacodbKt.findClassInLoader(Jacodb.kt:112) ~[usvm-jvm-instrumentation-comp-231122-1058.jar:?]
at org.usvm.instrumentation.util.JacodbKt.toJavaClass(Jacodb.kt:108) ~[usvm-jvm-instrumentation-comp-231122-1058.jar:?]
at org.usvm.instrumentation.util.JacodbKt.toJavaClass(Jacodb.kt:54) ~[usvm-jvm-instrumentation-comp-231122-1058.jar:?]
at org.usvm.instrumentation.testcase.executor.UTestExpressionExecutor.executeUTestAllocateMemoryCall(UTestExpressionExecutor.kt:157) ~[usvm-jvm-instrumentation-comp-231122-1058.jar:?]
at org.usvm.instrumentation.testcase.executor.UTestExpressionExecutor.exec(UTestExpressionExecutor.kt:63) ~[usvm-jvm-instrumentation-comp-231122-1058.jar:?]
at org.usvm.instrumentation.testcase.executor.UTestExpressionExecutor.executeUTestSetFieldStatement(UTestExpressionExecutor.kt:233) ~[usvm-jvm-instrumentation-comp-231122-1058.jar:?]
at org.usvm.instrumentation.testcase.executor.UTestExpressionExecutor.exec(UTestExpressionExecutor.kt:73) ~[usvm-jvm-instrumentation-comp-231122-1058.jar:?]
at org.usvm.instrumentation.testcase.executor.UTestExpressionExecutor.executeUTestInst-IoAF18A(UTestExpressionExecutor.kt:39) ~[usvm-jvm-instrumentation-comp-231122-1058.jar:?]
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.