]
Ryan Emerson resolved ISPN-7220.
--------------------------------
Fix Version/s: 9.0.0.Beta1
Resolution: Done
Fixed by
GlobalMarshaller IOException "unknown type" when restarting
servers
-------------------------------------------------------------------
Key: ISPN-7220
URL:
https://issues.jboss.org/browse/ISPN-7220
Project: Infinispan
Issue Type: Bug
Components: Marshalling, Server
Affects Versions: 9.0.0.Alpha4
Reporter: Ryan Emerson
Fix For: 9.0.0.Beta1
An IOException is thrown when restarting servers in server mode, due to an unknown type
being encountered by GlobalMarshaller. Stacktrace below:
{code:java}
[Server:server-one] 16:41:44,665 ERROR
[org.infinispan.notifications.cachemanagerlistener.CacheManagerNotifierImpl]
(jgroups-10,master:server-one) ISPN000405: Caught exception while invoking a cache manager
listener!: org.infinispan.commons.CacheListenerException: ISPN000280: Caught exception
[org.infinispan.persistence.spi.PersistenceException] while invoking method [public void
org.infinispan.topology.ClusterTopologyManagerImpl$ClusterViewListener.handleViewChange(org.infinispan.notifications.cachemanagerlistener.event.ViewChangedEvent)]
on listener instance:
org.infinispan.topology.ClusterTopologyManagerImpl$ClusterViewListener@4440b79f
[Server:server-one] at
org.infinispan.notifications.impl.AbstractListenerImpl$ListenerInvocationImpl$1.run(AbstractListenerImpl.java:302)
[Server:server-one] at
org.infinispan.util.concurrent.WithinThreadExecutor.execute(WithinThreadExecutor.java:20)
[Server:server-one] at
org.infinispan.notifications.impl.AbstractListenerImpl$ListenerInvocationImpl.invoke(AbstractListenerImpl.java:320)
[Server:server-one] at
org.infinispan.notifications.cachemanagerlistener.CacheManagerNotifierImpl.invokeListener(CacheManagerNotifierImpl.java:132)
[Server:server-one] at
org.infinispan.notifications.cachemanagerlistener.CacheManagerNotifierImpl.notifyViewChange(CacheManagerNotifierImpl.java:88)
[Server:server-one] at
org.infinispan.remoting.transport.jgroups.JGroupsTransport$NotifyViewChange.emitNotification(JGroupsTransport.java:858)
[Server:server-one] at
org.infinispan.remoting.transport.jgroups.JGroupsTransport.viewAccepted(JGroupsTransport.java:934)
[Server:server-one] at
org.jgroups.blocks.MessageDispatcher.handleUpEvent(MessageDispatcher.java:511)
[Server:server-one] at
org.jgroups.blocks.MessageDispatcher$ProtocolAdapter.up(MessageDispatcher.java:568)
[Server:server-one] at org.jgroups.JChannel.up(JChannel.java:773)
[Server:server-one] at
org.jgroups.fork.ForkProtocolStack.up(ForkProtocolStack.java:117)
[Server:server-one] at org.jgroups.stack.Protocol.up(Protocol.java:373)
[Server:server-one] at org.jgroups.protocols.FORK.up(FORK.java:109)
[Server:server-one] at org.jgroups.protocols.FRAG2.up(FRAG2.java:145)
[Server:server-one] at org.jgroups.protocols.FlowControl.up(FlowControl.java:346)
[Server:server-one] at org.jgroups.protocols.FlowControl.up(FlowControl.java:346)
[Server:server-one] at org.jgroups.protocols.pbcast.GMS.installView(GMS.java:715)
[Server:server-one] at
org.jgroups.protocols.pbcast.CoordGmsImpl.handleViewChange(CoordGmsImpl.java:225)
[Server:server-one] at org.jgroups.protocols.pbcast.GMS.up(GMS.java:925)
[Server:server-one] at org.jgroups.stack.Protocol.up(Protocol.java:407)
[Server:server-one] at org.jgroups.protocols.pbcast.STABLE.up(STABLE.java:293)
[Server:server-one] at org.jgroups.protocols.UNICAST3.up(UNICAST3.java:468)
[Server:server-one] at
org.jgroups.protocols.pbcast.NAKACK2.deliverBatch(NAKACK2.java:967)
[Server:server-one] at
org.jgroups.protocols.pbcast.NAKACK2.removeAndPassUp(NAKACK2.java:897)
[Server:server-one] at
org.jgroups.protocols.pbcast.NAKACK2.handleMessage(NAKACK2.java:832)
[Server:server-one] at org.jgroups.protocols.pbcast.NAKACK2.up(NAKACK2.java:609)
[Server:server-one] at org.jgroups.protocols.VERIFY_SUSPECT.up(VERIFY_SUSPECT.java:129)
[Server:server-one] at org.jgroups.protocols.FD_ALL.up(FD_ALL.java:196)
[Server:server-one] at org.jgroups.protocols.FD_SOCK.up(FD_SOCK.java:252)
[Server:server-one] at org.jgroups.protocols.MERGE3.up(MERGE3.java:272)
[Server:server-one] at org.jgroups.protocols.Discovery.up(Discovery.java:270)
[Server:server-one] at org.jgroups.protocols.TP.passMessageUp(TP.java:1169)
[Server:server-one] at org.jgroups.protocols.TP.lambda$loopback$2(TP.java:1110)
[Server:server-one] at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
[Server:server-one] at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[Server:server-one] at java.lang.Thread.run(Thread.java:745)
[Server:server-one] Caused by: org.infinispan.persistence.spi.PersistenceException:
Execution exception!
[Server:server-one] at
org.infinispan.persistence.file.SingleFileStore.process(SingleFileStore.java:549)
[Server:server-one] at
org.infinispan.persistence.manager.PersistenceManagerImpl.preload(PersistenceManagerImpl.java:257)
[Server:server-one] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[Server:server-one] at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[Server:server-one] at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[Server:server-one] at java.lang.reflect.Method.invoke(Method.java:498)
[Server:server-one] at
org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:168)
[Server:server-one] at
org.infinispan.factories.AbstractComponentRegistry$PrioritizedMethod.invoke(AbstractComponentRegistry.java:867)
[Server:server-one] at
org.infinispan.factories.AbstractComponentRegistry.invokeStartMethods(AbstractComponentRegistry.java:633)
[Server:server-one] at
org.infinispan.factories.AbstractComponentRegistry.internalStart(AbstractComponentRegistry.java:622)
[Server:server-one] at
org.infinispan.factories.AbstractComponentRegistry.start(AbstractComponentRegistry.java:547)
[Server:server-one] at
org.infinispan.factories.ComponentRegistry.start(ComponentRegistry.java:231)
[Server:server-one] at org.infinispan.cache.impl.CacheImpl.start(CacheImpl.java:808)
[Server:server-one] at
org.infinispan.manager.DefaultCacheManager.wireAndStartCache(DefaultCacheManager.java:639)
[Server:server-one] at
org.infinispan.manager.DefaultCacheManager.createCache(DefaultCacheManager.java:590)
[Server:server-one] at
org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:454)
[Server:server-one] at
org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:440)
[Server:server-one] at
org.infinispan.server.eventlogger.ServerEventLogger.getEventCache(ServerEventLogger.java:52)
[Server:server-one] at
org.infinispan.server.eventlogger.ServerEventLogger.eventLog(ServerEventLogger.java:68)
[Server:server-one] at
org.infinispan.server.eventlogger.ServerEventLogger.log(ServerEventLogger.java:60)
[Server:server-one] at
org.infinispan.util.logging.events.EventLogger.info(EventLogger.java:40)
[Server:server-one] at
org.infinispan.topology.ClusterTopologyManagerImpl.lambda$logNodeJoined$6(ClusterTopologyManagerImpl.java:762)
[Server:server-one] at
java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
[Server:server-one] at
java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
[Server:server-one] at
java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
[Server:server-one] at
java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
[Server:server-one] at
java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
[Server:server-one] at
java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
[Server:server-one] at
java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
[Server:server-one] at
java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
[Server:server-one] at
java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
[Server:server-one] at
org.infinispan.topology.ClusterTopologyManagerImpl.logNodeJoined(ClusterTopologyManagerImpl.java:762)
[Server:server-one] at
org.infinispan.topology.ClusterTopologyManagerImpl.access$300(ClusterTopologyManagerImpl.java:76)
[Server:server-one] at
org.infinispan.topology.ClusterTopologyManagerImpl$ClusterViewListener.handleViewChange(ClusterTopologyManagerImpl.java:731)
[Server:server-one] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[Server:server-one] at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[Server:server-one] at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[Server:server-one] at java.lang.reflect.Method.invoke(Method.java:498)
[Server:server-one] at
org.infinispan.notifications.impl.AbstractListenerImpl$ListenerInvocationImpl$1.run(AbstractListenerImpl.java:297)
[Server:server-one] ... 35 more
[Server:server-one] Caused by: java.util.concurrent.ExecutionException:
org.infinispan.persistence.spi.PersistenceException: java.io.IOException: Unknown type:
115
[Server:server-one] at java.util.concurrent.FutureTask.report(FutureTask.java:122)
[Server:server-one] at java.util.concurrent.FutureTask.get(FutureTask.java:192)
[Server:server-one] at
org.infinispan.executors.ExecutorAllCompletionService.pollUntilEmpty(ExecutorAllCompletionService.java:48)
[Server:server-one] at
org.infinispan.executors.ExecutorAllCompletionService.submit(ExecutorAllCompletionService.java:32)
[Server:server-one] at
org.infinispan.persistence.file.SingleFileStore.process(SingleFileStore.java:531)
[Server:server-one] ... 73 more
[Server:server-one] Caused by: org.infinispan.persistence.spi.PersistenceException:
java.io.IOException: Unknown type: 115
[Server:server-one] at
org.infinispan.marshall.core.MarshalledEntryImpl.unmarshall(MarshalledEntryImpl.java:116)
[Server:server-one] at
org.infinispan.marshall.core.MarshalledEntryImpl.getValue(MarshalledEntryImpl.java:61)
[Server:server-one] at
org.infinispan.persistence.manager.PersistenceManagerImpl$1.processEntry(PersistenceManagerImpl.java:265)
[Server:server-one] at
org.infinispan.persistence.file.SingleFileStore$2.call(SingleFileStore.java:537)
[Server:server-one] at
org.infinispan.persistence.file.SingleFileStore$2.call(SingleFileStore.java:531)
[Server:server-one] at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[Server:server-one] at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
[Server:server-one] at java.util.concurrent.FutureTask.run(FutureTask.java:266)
[Server:server-one] at
org.infinispan.util.concurrent.WithinThreadExecutor.execute(WithinThreadExecutor.java:20)
[Server:server-one] at
java.util.concurrent.ExecutorCompletionService.submit(ExecutorCompletionService.java:181)
[Server:server-one] at
org.infinispan.executors.ExecutorAllCompletionService.submit(ExecutorAllCompletionService.java:31)
[Server:server-one] ... 74 more
[Server:server-one] Caused by: java.io.IOException: Unknown type: 115
[Server:server-one] at
org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:458)
[Server:server-one] at
org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:318)
[Server:server-one] at
org.infinispan.marshall.core.BytesObjectInput.readObject(BytesObjectInput.java:39)
[Server:server-one] at
org.infinispan.server.eventlogger.ServerEventImpl$Externalizer.readObject(ServerEventImpl.java:128)
[Server:server-one] at
org.infinispan.server.eventlogger.ServerEventImpl$Externalizer.readObject(ServerEventImpl.java:110)
[Server:server-one] at
org.infinispan.marshall.core.ExternalExternalizers$ForeignAdvancedExternalizer.readObject(ExternalExternalizers.java:83)
[Server:server-one] at
org.infinispan.marshall.core.GlobalMarshaller.readWithExternalizer(GlobalMarshaller.java:465)
[Server:server-one] at
org.infinispan.marshall.core.GlobalMarshaller.readNonNullableObject(GlobalMarshaller.java:452)
[Server:server-one] at
org.infinispan.marshall.core.GlobalMarshaller.readNullableObject(GlobalMarshaller.java:318)
[Server:server-one] at
org.infinispan.marshall.core.GlobalMarshaller.objectFromObjectInput(GlobalMarshaller.java:156)
[Server:server-one] at
org.infinispan.marshall.core.GlobalMarshaller.objectFromByteBuffer(GlobalMarshaller.java:185)
[Server:server-one] at
org.infinispan.marshall.core.MarshalledEntryImpl.unmarshall(MarshalledEntryImpl.java:114)
[Server:server-one] ... 84 more
{code}