You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Dávid Paksy (Jira)" <ji...@apache.org> on 2026/04/23 11:41:00 UTC

[jira] [Created] (ZOOKEEPER-5039) Upgrade Mockito to 5.23.0 for JDK25

Dávid Paksy created ZOOKEEPER-5039:
--------------------------------------

             Summary: Upgrade Mockito to 5.23.0 for JDK25
                 Key: ZOOKEEPER-5039
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-5039
             Project: ZooKeeper
          Issue Type: Task
            Reporter: Dávid Paksy


With the current 4.9.0 Mockito version tests are failing when JDK25 is used
{noformat}
[ERROR] testACLDigestHashHiding_OnlyAdmin  Time elapsed: 0.07 s  <<< ERROR!org.mockito.exceptions.base.MockitoException: 
Mockito cannot mock this class: class org.apache.zookeeper.server.ZKDatabase.
If you're not sure why you're getting this error, please open an issue on GitHub.

Java               : 25JVM vendor name    : Eclipse AdoptiumJVM vendor version : 25.0.2+10-LTSJVM name           : OpenJDK 64-Bit Server VMJVM version        : 25.0.2+10-LTSJVM info           : mixed mode, sharingOS name            : LinuxOS version         : 6.17.0-22-generic

You are seeing this disclaimer because Mockito is configured to create inlined mocks.You can learn about inline mocks and their limitations under item #39 of the Mockito class javadoc.
Underlying exception : org.mockito.exceptions.base.MockitoException: Could not modify all classes [class org.apache.zookeeper.server.ZKDatabase, class java.lang.Object]	at org.apache.zookeeper.server.FinalRequestProcessorTest.setUp(FinalRequestProcessorTest.java:67)	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)	at java.base/java.lang.reflect.Method.invoke(Method.java:565)

...
Caused by: org.mockito.exceptions.base.MockitoException: Could not modify all classes [class org.apache.zookeeper.server.ZKDatabase, class java.lang.Object]	at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:168)	at net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:399)	at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:190)	at net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:410)	... 68 moreCaused by: java.lang.IllegalStateException: Byte Buddy could not instrument all classes within the mock's type hierarchy
This problem should never occur for javac-compiled classes. This problem has been observed for classes that are: - Compiled by older versions of scalac - Classes that are part of the Android distribution	at org.mockito.internal.creation.bytebuddy.InlineBytecodeGenerator.triggerRetransformation(InlineBytecodeGenerator.java:284)	at org.mockito.internal.creation.bytebuddy.InlineBytecodeGenerator.mockClass(InlineBytecodeGenerator.java:217)	at org.mockito.internal.creation.bytebuddy.TypeCachingBytecodeGenerator.lambda$mockClass$0(TypeCachingBytecodeGenerator.java:47)	at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:168)	at net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:399)	at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:190)	at net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:410)	at org.mockito.internal.creation.bytebuddy.TypeCachingBytecodeGenerator.mockClass(TypeCachingBytecodeGenerator.java:40)	at org.mockito.internal.creation.bytebuddy.InlineDelegateByteBuddyMockMaker.createMockType(InlineDelegateByteBuddyMockMaker.java:396)	at org.mockito.internal.creation.bytebuddy.InlineDelegateByteBuddyMockMaker.doCreateMock(InlineDelegateByteBuddyMockMaker.java:355)	at org.mockito.internal.creation.bytebuddy.InlineDelegateByteBuddyMockMaker.createMock(InlineDelegateByteBuddyMockMaker.java:334)	at org.mockito.internal.creation.bytebuddy.InlineByteBuddyMockMaker.createMock(InlineByteBuddyMockMaker.java:56)	at org.mockito.internal.util.MockUtil.createMock(MockUtil.java:99)	at org.mockito.internal.MockitoCore.mock(MockitoCore.java:88)	at org.mockito.Mockito.mock(Mockito.java:1998)	at org.mockito.Mockito.mock(Mockito.java:1913)	... 68 moreCaused by: java.lang.IllegalArgumentException: Java 25 (69) is not supported by the current version of Byte Buddy which officially supports Java 19 (63) - update Byte Buddy or set net.bytebuddy.experimental as a VM property	at net.bytebuddy.utility.OpenedClassReader.of(OpenedClassReader.java:96)	at net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining.create(TypeWriter.java:4011)	at net.bytebuddy.dynamic.scaffold.TypeWriter$Default.make(TypeWriter.java:2224)	at net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$UsingTypeWriter.make(DynamicType.java:4050)	at net.bytebuddy.dynamic.DynamicType$Builder$AbstractBase.make(DynamicType.java:3734)	at org.mockito.internal.creation.bytebuddy.InlineBytecodeGenerator.transform(InlineBytecodeGenerator.java:401)	at java.instrument/java.lang.instrument.ClassFileTransformer.transform(ClassFileTransformer.java:257)	at java.instrument/sun.instrument.TransformerManager.transform(TransformerManager.java:188)	at java.instrument/sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:594)	at java.instrument/sun.instrument.InstrumentationImpl.retransformClasses0(Native Method)	at java.instrument/sun.instrument.InstrumentationImpl.retransformClasses(InstrumentationImpl.java:221)	at org.mockito.internal.creation.bytebuddy.InlineBytecodeGenerator.triggerRetransformation(InlineBytecodeGenerator.java:280)	... 83 more
[ERROR] testACLDigestHashHiding_UserCanAll  Time elapsed: 0.052 s  <<< ERROR!
{noformat}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)