Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

org.infinispan.commons.CacheException:java.lang.NoClassDefFoundError: Could not initialize class org.jboss.marshalling.river.ClassDescriptors #19739

Closed
2 tasks done
Stono opened this issue Apr 15, 2023 · 8 comments
Assignees
Labels
area/infinispan kind/bug Categorizes a PR related to a bug

Comments

@Stono
Copy link

Stono commented Apr 15, 2023

Before reporting an issue

  • I have searched existing issues
  • I have reproduced the issue with the latest release

Area

infinispan

Describe the bug

Hi,
I'm currently doing a 20->21 upgrade, and in doing so have also bumped the java version from 11 to 17 due to Java 11 support being deprecated.

I run on kubernetes, with KC_CACHE_STACK = kubernetes.

I noticed after the upgrade that if I go to the admin UI, and click sessions I get an error: Network response was not OK.. Looking at the network request, we got a 500 back from the keycloak server.

There is a corresponding error log at the bottom of this issue.

Now the really strange thing; this only happens when I have 3 replicas of keycloak running. When I scale down to 2 or 1, then there is no error. I had a theory it was something to do with the default cache owners="2", eg when running with 3 replicas perhaps it was hitting the node which wasn't an owner. I attempted to create a custom cache-ispn.xml setting that to 3, but it had no effect.

Not really sure where to go from here!

{"timestamp":"2023-04-15T09:10:59.664Z","sequence":150537,"loggerClassName":"org.infinispan.util.logging.Log_$logger","loggerName":"org.infinispan.CLUSTER","level":"ERROR","message":"ISPN000474: Error processing request 187@keycloak-2-38312","threadName":"jgroups-46,keycloak-0-50644","threadId":95,"mdc":{},"ndc":"","hostName":"keycloak-0","processName":"QuarkusEntryPoint","processId":1,"exception":{"refId":1,"exceptionType":"java.lang.NoClassDefFoundError","message":"Could not initialize class org.jboss.marshalling.river.ClassDescriptors","frames":[{"class":"org.jboss.marshalling.river.RiverUnmarshaller","method":"doReadClassDescriptor","line":1268},{"class":"org.jboss.marshalling.river.RiverUnmarshaller","method":"doReadClassDescriptor","line":1067},{"class":"org.jboss.marshalling.river.RiverUnmarshaller","method":"doReadNewObject","line":1381},{"class":"org.jboss.marshalling.river.RiverUnmarshaller","method":"doReadObject","line":298},{"class":"org.jboss.marshalling.river.RiverUnmarshaller","method":"doReadObject","line":231},{"class":"org.jboss.marshalling.AbstractObjectInput","method":"readObject","line":41},{"class":"org.infinispan.jboss.marshalling.commons.AbstractJBossMarshaller","method":"objectFromObjectStream","line":137},{"class":"org.infinispan.jboss.marshalling.commons.AbstractJBossMarshaller","method":"objectFromByteBuffer","line":115},{"class":"org.infinispan.commons.marshall.AbstractMarshaller","method":"objectFromByteBuffer","line":82},{"class":"org.infinispan.marshall.core.impl.DelegatingUserMarshaller","method":"objectFromByteBuffer","line":63},{"class":"org.infinispan.marshall.protostream.impl.MarshallableUserObject$Marshaller","method":"read","line":139},{"class":"org.infinispan.marshall.protostream.impl.MarshallableUserObject$Marshaller","method":"read","line":100},{"class":"org.infinispan.protostream.impl.ProtobufTagMarshallerDelegate","method":"unmarshall","line":32},{"class":"org.infinispan.protostream.WrappedMessage","method":"readMessage","line":539},{"class":"org.infinispan.protostream.WrappedMessage","method":"read","line":351},{"class":"org.infinispan.protostream.ProtobufUtil","method":"fromWrappedByteArray","line":129},{"class":"org.infinispan.marshall.protostream.impl.AbstractInternalProtoStreamMarshaller","method":"objectFromByteBuffer","line":102},{"class":"org.infinispan.marshall.protostream.impl.AbstractInternalProtoStreamMarshaller","method":"objectFromByteBuffer","line":97},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readUnknown","line":905},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readUnknown","line":890},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readNonNullableObject","line":714},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readNullableObject","line":357},{"class":"org.infinispan.marshall.core.BytesObjectInput","method":"readObject","line":32},{"class":"org.infinispan.stream.impl.intops.IntermediateOperationExternalizer","method":"readObject","line":378},{"class":"org.infinispan.stream.impl.intops.IntermediateOperationExternalizer","method":"readObject","line":93},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readWithExternalizer","line":727},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readNonNullableObject","line":708},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readNullableObject","line":357},{"class":"org.infinispan.marshall.core.BytesObjectInput","method":"readObject","line":32},{"class":"org.infinispan.commons.marshall.MarshallUtil","method":"lambda$unmarshallCollection$0","line":295}]}}
io.reactivex.rxjava3.exceptions.UndeliverableException: The exception could not be delivered to the consumer because it has already canceled/disposed the flow or the exception has nowhere to go to begin with. Further reading: https://github.com/ReactiveX/RxJava/wiki/What's-different-in-2.0#error-handling | org.infinispan.commons.CacheException: java.lang.NoClassDefFoundError: Could not initialize class org.jboss.marshalling.river.ClassDescriptors
	at io.reactivex.rxjava3.plugins.RxJavaPlugins.onError(RxJavaPlugins.java:372)
	at io.reactivex.rxjava3.processors.SerializedProcessor.onError(SerializedProcessor.java:110)
{"timestamp":"2023-04-15T09:10:59.664Z","sequence":151990,"loggerClassName":"org.infinispan.util.logging.Log_$logger","loggerName":"org.infinispan.CLUSTER","level":"ERROR","message":"ISPN000474: Error processing request 188@keycloak-2-38312","threadName":"jgroups-34,keycloak-1-14959","threadId":85,"mdc":{},"ndc":"","hostName":"keycloak-1","processName":"QuarkusEntryPoint","processId":1,"exception":{"refId":1,"exceptionType":"java.lang.NoClassDefFoundError","message":"Could not initialize class org.jboss.marshalling.river.ClassDescriptors","frames":[{"class":"org.jboss.marshalling.river.RiverUnmarshaller","method":"doReadClassDescriptor","line":1268},{"class":"org.jboss.marshalling.river.RiverUnmarshaller","method":"doReadClassDescriptor","line":1067},{"class":"org.jboss.marshalling.river.RiverUnmarshaller","method":"doReadNewObject","line":1381},{"class":"org.jboss.marshalling.river.RiverUnmarshaller","method":"doReadObject","line":298},{"class":"org.jboss.marshalling.river.RiverUnmarshaller","method":"doReadObject","line":231},{"class":"org.jboss.marshalling.AbstractObjectInput","method":"readObject","line":41},{"class":"org.infinispan.jboss.marshalling.commons.AbstractJBossMarshaller","method":"objectFromObjectStream","line":137},{"class":"org.infinispan.jboss.marshalling.commons.AbstractJBossMarshaller","method":"objectFromByteBuffer","line":115},{"class":"org.infinispan.commons.marshall.AbstractMarshaller","method":"objectFromByteBuffer","line":82},{"class":"org.infinispan.marshall.core.impl.DelegatingUserMarshaller","method":"objectFromByteBuffer","line":63},{"class":"org.infinispan.marshall.protostream.impl.MarshallableUserObject$Marshaller","method":"read","line":139},{"class":"org.infinispan.marshall.protostream.impl.MarshallableUserObject$Marshaller","method":"read","line":100},{"class":"org.infinispan.protostream.impl.ProtobufTagMarshallerDelegate","method":"unmarshall","line":32},{"class":"org.infinispan.protostream.WrappedMessage","method":"readMessage","line":539},{"class":"org.infinispan.protostream.WrappedMessage","method":"read","line":351},{"class":"org.infinispan.protostream.ProtobufUtil","method":"fromWrappedByteArray","line":129},{"class":"org.infinispan.marshall.protostream.impl.AbstractInternalProtoStreamMarshaller","method":"objectFromByteBuffer","line":102},{"class":"org.infinispan.marshall.protostream.impl.AbstractInternalProtoStreamMarshaller","method":"objectFromByteBuffer","line":97},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readUnknown","line":905},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readUnknown","line":890},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readNonNullableObject","line":714},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readNullableObject","line":357},{"class":"org.infinispan.marshall.core.BytesObjectInput","method":"readObject","line":32},{"class":"org.infinispan.stream.impl.intops.IntermediateOperationExternalizer","method":"readObject","line":378},{"class":"org.infinispan.stream.impl.intops.IntermediateOperationExternalizer","method":"readObject","line":93},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readWithExternalizer","line":727},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readNonNullableObject","line":708},{"class":"org.infinispan.marshall.core.GlobalMarshaller","method":"readNullableObject","line":357},{"class":"org.infinispan.marshall.core.BytesObjectInput","method":"readObject","line":32},{"class":"org.infinispan.commons.marshall.MarshallUtil","method":"lambda$unmarshallCollection$0","line":295}]}}
	at org.infinispan.reactive.publisher.impl.ClusterPublisherManagerImpl$SegmentSpecificConsumer.accept(ClusterPublisherManagerImpl.java:434)
	at org.infinispan.reactive.publisher.impl.ClusterPublisherManagerImpl$SegmentSpecificConsumer.accept(ClusterPublisherManagerImpl.java:395)
	at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:863)
	at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:841)
	at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510)
	at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2162)
	at org.infinispan.remoting.transport.AbstractRequest.completeExceptionally(AbstractRequest.java:75)
	at org.infinispan.remoting.transport.impl.SingleTargetRequest.onResponse(SingleTargetRequest.java:49)
	at org.infinispan.remoting.transport.impl.RequestRepository.addResponse(RequestRepository.java:51)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processResponse(JGroupsTransport.java:1578)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processMessage(JGroupsTransport.java:1480)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport$ChannelCallbacks.up(JGroupsTransport.java:1685)
	at org.jgroups.JChannel.up(JChannel.java:733)
	at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:921)
	at org.jgroups.protocols.FRAG2.up(FRAG2.java:138)
	at org.jgroups.protocols.FlowControl.up(FlowControl.java:245)
	at org.jgroups.protocols.FlowControl.up(FlowControl.java:245)
	at org.jgroups.protocols.pbcast.GMS.up(GMS.java:845)
	at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:226)
	at org.jgroups.protocols.UNICAST3.deliverMessage(UNICAST3.java:1052)
	at org.jgroups.protocols.UNICAST3.addMessage(UNICAST3.java:794)
	at org.jgroups.protocols.UNICAST3.handleDataReceived(UNICAST3.java:776)
	at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:425)
	at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:658)
	at org.jgroups.protocols.VERIFY_SUSPECT2.up(VERIFY_SUSPECT2.java:105)
	at org.jgroups.protocols.FailureDetection.up(FailureDetection.java:180)
	at org.jgroups.protocols.FD_SOCK2.up(FD_SOCK2.java:188)
	at org.jgroups.protocols.MERGE3.up(MERGE3.java:274)
Caused by: org.infinispan.commons.CacheException: java.lang.NoClassDefFoundError: Could not initialize class org.jboss.marshalling.river.ClassDescriptors
	at org.infinispan.marshall.exts.ThrowableExternalizer.readObject(ThrowableExternalizer.java:181)
	at org.infinispan.marshall.exts.ThrowableExternalizer.readObject(ThrowableExternalizer.java:42)
	at org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:727)
	at org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:708)
	at org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:357)
	at org.infinispan.marshall.core.BytesObjectInput.readObject(BytesObjectInput.java:32)
	at org.infinispan.remoting.responses.ExceptionResponse$Externalizer.readObject(ExceptionResponse.java:49)
	at org.infinispan.remoting.responses.ExceptionResponse$Externalizer.readObject(ExceptionResponse.java:41)
	at org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:727)
	at org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:708)
	at org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:357)
	at org.infinispan.marshall.core.GlobalMarshaller.objectFromObjectInput(GlobalMarshaller.java:191)
	at org.infinispan.marshall.core.GlobalMarshaller.objectFromByteBuffer(GlobalMarshaller.java:220)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processResponse(JGroupsTransport.java:1570)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processMessage(JGroupsTransport.java:1480)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport$ChannelCallbacks.up(JGroupsTransport.java:1685)
	at org.jgroups.JChannel.up(JChannel.java:733)
	at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:921)
	at org.jgroups.protocols.FRAG2.up(FRAG2.java:138)
	at org.jgroups.protocols.FlowControl.up(FlowControl.java:245)
	at org.jgroups.protocols.FlowControl.up(FlowControl.java:245)
	at org.jgroups.protocols.pbcast.GMS.up(GMS.java:845)
	at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:226)
	at org.jgroups.protocols.UNICAST3.deliverMessage(UNICAST3.java:1052)
	at org.jgroups.protocols.UNICAST3.addMessage(UNICAST3.java:794)
	at org.jgroups.protocols.UNICAST3.handleDataReceived(UNICAST3.java:776)
	at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:425)
	at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:658)
	at org.jgroups.protocols.VERIFY_SUSPECT2.up(VERIFY_SUSPECT2.java:105)
	at org.jgroups.protocols.FailureDetection.up(FailureDetection.java:180)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.jboss.marshalling.river.ClassDescriptors
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
	at org.infinispan.marshall.exts.ThrowableExternalizer.readGenericThrowable(ThrowableExternalizer.java:282)
	at org.infinispan.marshall.exts.ThrowableExternalizer.readObject(ThrowableExternalizer.java:259)
	at org.infinispan.marshall.exts.ThrowableExternalizer.readObject(ThrowableExternalizer.java:42)
	at org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:727)
	at org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:708)
	at org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:357)
	at org.infinispan.marshall.core.BytesObjectInput.readObject(BytesObjectInput.java:32)
	at org.infinispan.marshall.exts.ThrowableExternalizer.readObject(ThrowableExternalizer.java:180)
	at org.infinispan.marshall.exts.ThrowableExternalizer.readObject(ThrowableExternalizer.java:42)
	at org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:727)
	at org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:708)
	at org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:357)
	at org.infinispan.marshall.core.BytesObjectInput.readObject(BytesObjectInput.java:32)
	at org.infinispan.remoting.responses.ExceptionResponse$Externalizer.readObject(ExceptionResponse.java:49)
	at org.infinispan.remoting.responses.ExceptionResponse$Externalizer.readObject(ExceptionResponse.java:41)
	at org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:727)
	at org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:708)
	at org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:357)
	at org.infinispan.marshall.core.GlobalMarshaller.objectFromObjectInput(GlobalMarshaller.java:191)
	at org.infinispan.marshall.core.GlobalMarshaller.objectFromByteBuffer(GlobalMarshaller.java:220)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processResponse(JGroupsTransport.java:1570)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processMessage(JGroupsTransport.java:1480)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport$ChannelCallbacks.up(JGroupsTransport.java:1685)
	at org.jgroups.JChannel.up(JChannel.java:733)
	at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:921)
Exception in thread "jgroups-34,keycloak-2-38312" io.reactivex.rxjava3.exceptions.UndeliverableException: The exception could not be delivered to the consumer because it has already canceled/disposed the flow or the exception has nowhere to go to begin with. Further reading: https://github.com/ReactiveX/RxJava/wiki/What's-different-in-2.0#error-handling | org.infinispan.commons.CacheException: java.lang.NoClassDefFoundError: Could not initialize class org.jboss.marshalling.river.ClassDescriptors
	at io.reactivex.rxjava3.plugins.RxJavaPlugins.onError(RxJavaPlugins.java:372)
	at io.reactivex.rxjava3.processors.SerializedProcessor.onError(SerializedProcessor.java:110)
	at org.infinispan.reactive.publisher.impl.ClusterPublisherManagerImpl$SegmentSpecificConsumer.accept(ClusterPublisherManagerImpl.java:434)
	at org.infinispan.reactive.publisher.impl.ClusterPublisherManagerImpl$SegmentSpecificConsumer.accept(ClusterPublisherManagerImpl.java:395)
	at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:863)
	at java.base/java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:841)
	at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:510)
	at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:2162)
	at org.infinispan.remoting.transport.AbstractRequest.completeExceptionally(AbstractRequest.java:75)
	at org.infinispan.remoting.transport.impl.SingleTargetRequest.onResponse(SingleTargetRequest.java:49)
	at org.infinispan.remoting.transport.impl.RequestRepository.addResponse(RequestRepository.java:51)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processResponse(JGroupsTransport.java:1578)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processMessage(JGroupsTransport.java:1480)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport$ChannelCallbacks.up(JGroupsTransport.java:1685)
	at org.jgroups.JChannel.up(JChannel.java:733)
	at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:921)
	at org.jgroups.protocols.FRAG2.up(FRAG2.java:138)
	at org.jgroups.protocols.FlowControl.up(FlowControl.java:245)
	at org.jgroups.protocols.FlowControl.up(FlowControl.java:245)
	at org.jgroups.protocols.pbcast.GMS.up(GMS.java:845)
	at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:226)
	at org.jgroups.protocols.UNICAST3.deliverMessage(UNICAST3.java:1052)
	at org.jgroups.protocols.UNICAST3.addMessage(UNICAST3.java:794)
	at org.jgroups.protocols.UNICAST3.handleDataReceived(UNICAST3.java:776)
	at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:425)
	at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:658)
	at org.jgroups.protocols.VERIFY_SUSPECT2.up(VERIFY_SUSPECT2.java:105)
	at org.jgroups.protocols.FailureDetection.up(FailureDetection.java:180)
	at org.jgroups.protocols.FD_SOCK2.up(FD_SOCK2.java:188)
	at org.jgroups.protocols.MERGE3.up(MERGE3.java:274)
Caused by: org.infinispan.commons.CacheException: java.lang.NoClassDefFoundError: Could not initialize class org.jboss.marshalling.river.ClassDescriptors
	at org.infinispan.marshall.exts.ThrowableExternalizer.readObject(ThrowableExternalizer.java:181)
	at org.infinispan.marshall.exts.ThrowableExternalizer.readObject(ThrowableExternalizer.java:42)
	at org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:727)
	at org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:708)
	at org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:357)
	at org.infinispan.marshall.core.BytesObjectInput.readObject(BytesObjectInput.java:32)
	at org.infinispan.remoting.responses.ExceptionResponse$Externalizer.readObject(ExceptionResponse.java:49)
	at org.infinispan.remoting.responses.ExceptionResponse$Externalizer.readObject(ExceptionResponse.java:41)
	at org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:727)
	at org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:708)
	at org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:357)
	at org.infinispan.marshall.core.GlobalMarshaller.objectFromObjectInput(GlobalMarshaller.java:191)
	at org.infinispan.marshall.core.GlobalMarshaller.objectFromByteBuffer(GlobalMarshaller.java:220)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processResponse(JGroupsTransport.java:1570)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processMessage(JGroupsTransport.java:1480)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport$ChannelCallbacks.up(JGroupsTransport.java:1685)
	at org.jgroups.JChannel.up(JChannel.java:733)
	at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:921)
	at org.jgroups.protocols.FRAG2.up(FRAG2.java:138)
	at org.jgroups.protocols.FlowControl.up(FlowControl.java:245)
	at org.jgroups.protocols.FlowControl.up(FlowControl.java:245)
	at org.jgroups.protocols.pbcast.GMS.up(GMS.java:845)
	at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:226)
	at org.jgroups.protocols.UNICAST3.deliverMessage(UNICAST3.java:1052)
	at org.jgroups.protocols.UNICAST3.addMessage(UNICAST3.java:794)
	at org.jgroups.protocols.UNICAST3.handleDataReceived(UNICAST3.java:776)
	at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:425)
	at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:658)
	at org.jgroups.protocols.VERIFY_SUSPECT2.up(VERIFY_SUSPECT2.java:105)
	at org.jgroups.protocols.FailureDetection.up(FailureDetection.java:180)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.jboss.marshalling.river.ClassDescriptors
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
	at org.infinispan.marshall.exts.ThrowableExternalizer.readGenericThrowable(ThrowableExternalizer.java:282)
	at org.infinispan.marshall.exts.ThrowableExternalizer.readObject(ThrowableExternalizer.java:259)
	at org.infinispan.marshall.exts.ThrowableExternalizer.readObject(ThrowableExternalizer.java:42)
	at org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:727)
	at org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:708)
	at org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:357)
	at org.infinispan.marshall.core.BytesObjectInput.readObject(BytesObjectInput.java:32)
	at org.infinispan.marshall.exts.ThrowableExternalizer.readObject(ThrowableExternalizer.java:180)
	at org.infinispan.marshall.exts.ThrowableExternalizer.readObject(ThrowableExternalizer.java:42)
	at org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:727)
	at org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:708)
	at org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:357)
	at org.infinispan.marshall.core.BytesObjectInput.readObject(BytesObjectInput.java:32)
	at org.infinispan.remoting.responses.ExceptionResponse$Externalizer.readObject(ExceptionResponse.java:49)
	at org.infinispan.remoting.responses.ExceptionResponse$Externalizer.readObject(ExceptionResponse.java:41)
	at org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:727)
	at org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:708)
	at org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:357)
	at org.infinispan.marshall.core.GlobalMarshaller.objectFromObjectInput(GlobalMarshaller.java:191)
	at org.infinispan.marshall.core.GlobalMarshaller.objectFromByteBuffer(GlobalMarshaller.java:220)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processResponse(JGroupsTransport.java:1570)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport.processMessage(JGroupsTransport.java:1480)
	at org.infinispan.remoting.transport.jgroups.JGroupsTransport$ChannelCallbacks.up(JGroupsTransport.java:1685)
	at org.jgroups.JChannel.up(JChannel.java:733)
	at org.jgroups.stack.ProtocolStack.up(ProtocolStack.java:921)

Version

21.0.2

Expected behavior

Sessions to work

Actual behavior

Sessions don't work :D

How to Reproduce?

Run 21.0.2 on kubernetes with 3 replicas, using KC_CACHE_STACK=kubernetes.

Anything else?

No response

@Stono Stono added kind/bug Categorizes a PR related to a bug status/triage labels Apr 15, 2023
@Stono
Copy link
Author

Stono commented Apr 15, 2023

OK so, downgrading java from 17 to 11 "fixed" it.

@martin-kanis
Copy link
Contributor

@Stono Thanks for to report. This seems to be a problem in Infinispan/jboss-marshalling. I created https://issues.redhat.com/browse/ISPN-14824

@martin-kanis martin-kanis self-assigned this Apr 28, 2023
@martin-kanis
Copy link
Contributor

It seems a target release with the fix is Infinispan 14.0.10.Final infinispan/infinispan#10890

@martin-kanis
Copy link
Contributor

Infinispan upgrade to 14.0.10.Final is now merged in main. It is possible to test it with a nightly build or wait until next release (22). As the issue is tricky to reproduce, and according to Infinispan team it should be fixed, I'm closing the issue now. Feel free to reopen, if this pop up in the future.

@martin-kanis
Copy link
Contributor

@taha-upstart I'm not sure. I recall some changes related to ISPN 14 upgrade. Some changes were related just to testsuite. I guess you need to try it to be 100% sure.

@taha-upstart
Copy link

@martin-kanis keycloak v22.0 release notes mention inifinispan upgrade to v14.0.8 which doesn't fix the reported bug here. is infinispan v14.0.10 planned to be released with 22.0.2?

@martin-kanis
Copy link
Contributor

martin-kanis commented Aug 29, 2023

@taha-upstart 22.0.1 contains Infinispan 14.0.10 https://github.com/keycloak/keycloak/blob/22.0.1/pom.xml#L80
22.0.2 will have Infinispan >=14.0.14

EDIT: Keycloak 22.0.0 is also Infinispan 14.0.10 https://github.com/keycloak/keycloak/blob/22.0.0/pom.xml#L80. If that is not working for you, maybe the problem wasn't fixed properly.

@taha-upstart
Copy link

perfect! thanks @martin-kanis . I was confused since the 22.0.1 release notes did not mention anything about that! https://www.keycloak.org/2023/07/keycloak-2201-released.html

@stianst stianst removed this from the Backlog milestone Dec 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/infinispan kind/bug Categorizes a PR related to a bug
Projects
None yet
Development

No branches or pull requests

4 participants