[JBoss JIRA] (ISPN-10760) nodejs-client fails when tries to use iterator, custome event converters
by Anna Manukyan (Jira)
[ https://issues.jboss.org/browse/ISPN-10760?page=com.atlassian.jira.plugin... ]
Anna Manukyan commented on ISPN-10760:
--------------------------------------
After running the tests with ISPN Server 10.0.0.Final, the most part of the exceptions described above are changed to the one above (but in some cases I am still getting the exception above):
{code}
13:20:20,336 ERROR [org.infinispan.interceptors.impl.InvocationContextInterceptor] (SINGLE_PORT-ServerIO-5-9) ISPN000136: Error executing command PutKeyValueCommand on Cache 'default', writing keys [WrappedByteArray{bytes=\l\i\s\t\e\n\-\t\y\p\e\d\-\k\e\y, hashCode=-225335305}]: java.lang.IllegalStateException: Unexpected tag : 108 (Field number : 13, Wire type : 4)
at org.infinispan.protostream.WrappedMessage.readMessage(WrappedMessage.java:364)
at org.infinispan.protostream.ProtobufUtil.fromWrappedByteArray(ProtobufUtil.java:163)
at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectFromByteBuffer(PersistenceMarshallerImpl.java:175)
at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectFromByteBuffer(PersistenceMarshallerImpl.java:170)
at org.infinispan.commons.dataconversion.BinaryTranscoder.transcode(BinaryTranscoder.java:50)
at org.infinispan.encoding.DataConversion.convert(DataConversion.java:144)
at org.infinispan.notifications.cachelistener.CacheNotifierImpl.convertKey(CacheNotifierImpl.java:314)
at org.infinispan.notifications.cachelistener.CacheNotifierImpl.configureEvent(CacheNotifierImpl.java:518)
at org.infinispan.notifications.cachelistener.CacheNotifierImpl.doNotifyCreated(CacheNotifierImpl.java:409)
at org.infinispan.notifications.cachelistener.CacheNotifierImpl.notifyCacheEntryCreated(CacheNotifierImpl.java:393)
at org.infinispan.interceptors.impl.CallInterceptor.performPut(CallInterceptor.java:221)
at org.infinispan.interceptors.impl.CallInterceptor.visitPutKeyValueCommand(CallInterceptor.java:208)
at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:61)
at org.infinispan.interceptors.impl.CallInterceptor.visitCommand(CallInterceptor.java:175)
at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextThenApply(BaseAsyncInterceptor.java:81)
at org.infinispan.interceptors.impl.EntryWrappingInterceptor.setSkipRemoteGetsAndInvokeNextForDataCommand(EntryWrappingInterceptor.java:699)
at org.infinispan.interceptors.impl.EntryWrappingInterceptor.visitPutKeyValueCommand(EntryWrappingInterceptor.java:315)
at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:61)
at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndFinally(BaseAsyncInterceptor.java:155)
at org.infinispan.interceptors.locking.AbstractLockingInterceptor.lambda$nonTxLockAndInvokeNext$3(AbstractLockingInterceptor.java:308)
at org.infinispan.interceptors.SyncInvocationStage.andHandle(SyncInvocationStage.java:69)
at org.infinispan.interceptors.locking.AbstractLockingInterceptor.nonTxLockAndInvokeNext(AbstractLockingInterceptor.java:303)
at org.infinispan.interceptors.locking.AbstractLockingInterceptor.visitNonTxDataWriteCommand(AbstractLockingInterceptor.java:128)
at org.infinispan.interceptors.locking.NonTransactionalLockingInterceptor.visitDataWriteCommand(NonTransactionalLockingInterceptor.java:40)
at org.infinispan.interceptors.locking.AbstractLockingInterceptor.visitPutKeyValueCommand(AbstractLockingInterceptor.java:82)
at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:61)
at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndFinally(BaseAsyncInterceptor.java:155)
at org.infinispan.interceptors.impl.CacheMgmtInterceptor.updateStoreStatistics(CacheMgmtInterceptor.java:213)
at org.infinispan.interceptors.impl.CacheMgmtInterceptor.visitPutKeyValueCommand(CacheMgmtInterceptor.java:175)
at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:61)
at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:59)
at org.infinispan.interceptors.DDAsyncInterceptor.handleDefault(DDAsyncInterceptor.java:53)
at org.infinispan.interceptors.DDAsyncInterceptor.visitPutKeyValueCommand(DDAsyncInterceptor.java:59)
at org.infinispan.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:61)
at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndExceptionally(BaseAsyncInterceptor.java:128)
at org.infinispan.interceptors.impl.InvocationContextInterceptor.visitCommand(InvocationContextInterceptor.java:90)
at org.infinispan.interceptors.impl.AsyncInterceptorChainImpl.invoke(AsyncInterceptorChainImpl.java:244)
at org.infinispan.cache.impl.CacheImpl.executeCommandAndCommitIfNeeded(CacheImpl.java:1832)
at org.infinispan.cache.impl.CacheImpl.put(CacheImpl.java:1355)
at org.infinispan.cache.impl.CacheImpl.put(CacheImpl.java:1956)
at org.infinispan.cache.impl.CacheImpl.put(CacheImpl.java:226)
at org.infinispan.cache.impl.AbstractDelegatingCache.put(AbstractDelegatingCache.java:450)
at org.infinispan.cache.impl.EncoderCache.put(EncoderCache.java:674)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$3$\^eval\_/0x00000001007c3c40.:program(<eval>:2)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(ScriptFunctionData.java:655)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunction.invoke(ScriptFunction.java:513)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptRuntime.apply(ScriptRuntime.java:527)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(NashornScriptEngine.java:428)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine$3.eval(NashornScriptEngine.java:521)
at java.scripting/javax.script.CompiledScript.eval(CompiledScript.java:89)
at org.infinispan.scripting.impl.ScriptingManagerImpl.execute(ScriptingManagerImpl.java:200)
at org.infinispan.scripting.impl.LocalRunner.runScript(LocalRunner.java:19)
at org.infinispan.scripting.impl.ScriptingManagerImpl.runScript(ScriptingManagerImpl.java:184)
at org.infinispan.scripting.impl.ScriptingTaskEngine.runTask(ScriptingTaskEngine.java:44)
at org.infinispan.tasks.impl.TaskManagerImpl.runTask(TaskManagerImpl.java:93)
at org.infinispan.server.hotrod.TaskRequestProcessor.exec(TaskRequestProcessor.java:39)
at org.infinispan.server.hotrod.HotRodDecoder.switch2(HotRodDecoder.java:1664)
at org.infinispan.server.hotrod.HotRodDecoder.switch1_0(HotRodDecoder.java:155)
at org.infinispan.server.hotrod.HotRodDecoder.decode(HotRodDecoder.java:143)
at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:505)
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:444)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:283)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)
at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:93)
at org.infinispan.server.core.transport.StatsChannelHandler.channelRead(StatsChannelHandler.java:26)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1422)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:931)
at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:792)
at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:483)
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:383)
at io.netty.util.concurrent.SingleThreadEventExecutor$6.run(SingleThreadEventExecutor.java:1044)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:834)
{code}
> nodejs-client fails when tries to use iterator, custome event converters
> ------------------------------------------------------------------------
>
> Key: ISPN-10760
> URL: https://issues.jboss.org/browse/ISPN-10760
> Project: Infinispan
> Issue Type: Bug
> Components: Server
> Affects Versions: 10.0.0.CR3
> Reporter: Anna Manukyan
> Assignee: Ryan Emerson
> Priority: Major
>
> When the nodejs-client connects to ServerNG and tries to use a custome event converter, or run iterator, the operation fails with exception:
> {code}
> 12:39:42,721 ERROR [org.infinispan.interceptors.impl.InvocationContextInterceptor] (SINGLE_PORT-ServerIO-5-13) ISPN000136: Error executing command PutMapCommand on Cache 'default', writing keys [WrappedByteArray{bytes=\{\"\k\"\:\"\j\l\o\c\a\l\-\i\t\3\"\}, hashCode=1235679806}, WrappedByteArray{bytes=\{\"\k\"\:\"\j\l\o\c\a\l\-\i\t\1\"\}, hashCode=1235677884}, WrappedByteArray{bytes=\{\"\k\"\:\"\j\l\o\c\a\l\-\i\t\2\"\}, hashCode=1235678845}]: org.infinispan.commons.dataconversion.EncodingException: ISPN000934: Unsupported content '[B@204b7b49'
> at org.infinispan.commons.dataconversion.BinaryTranscoder.transcode(BinaryTranscoder.java:67)
> at org.infinispan.encoding.DataConversion.convert(DataConversion.java:144)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.convertKey(CacheNotifierImpl.java:312)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.configureEvent(CacheNotifierImpl.java:515)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.doNotifyCreated(CacheNotifierImpl.java:406)
> at org.infinispan.notifications.cachelistener.CacheNotifierImpl.notifyCacheEntryCreated(CacheNotifierImpl.java:390)
> at org.infinispan.interceptors.impl.CallInterceptor.visitPutMapCommand(CallInterceptor.java:481)
> at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:68)
> at org.infinispan.interceptors.impl.CallInterceptor.visitCommand(CallInterceptor.java:166)
> at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextThenApply(BaseAsyncInterceptor.java:81)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.setSkipRemoteGetsAndInvokeNextForManyEntriesCommand(EntryWrappingInterceptor.java:658)
> at org.infinispan.interceptors.impl.EntryWrappingInterceptor.visitPutMapCommand(EntryWrappingInterceptor.java:412)
> at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:68)
> at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndFinally(BaseAsyncInterceptor.java:155)
> at org.infinispan.interceptors.locking.AbstractLockingInterceptor.lambda$nonTxLockAndInvokeNext$3(AbstractLockingInterceptor.java:308)
> at org.infinispan.interceptors.SyncInvocationStage.andHandle(SyncInvocationStage.java:70)
> at org.infinispan.interceptors.locking.AbstractLockingInterceptor.nonTxLockAndInvokeNext(AbstractLockingInterceptor.java:303)
> at org.infinispan.interceptors.locking.NonTransactionalLockingInterceptor.handleWriteManyCommand(NonTransactionalLockingInterceptor.java:65)
> at org.infinispan.interceptors.locking.AbstractLockingInterceptor.visitPutMapCommand(AbstractLockingInterceptor.java:182)
> at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:68)
> at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:59)
> at org.infinispan.interceptors.impl.CacheMgmtInterceptor.visitPutMapCommand(CacheMgmtInterceptor.java:162)
> at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:68)
> at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:59)
> at org.infinispan.interceptors.DDAsyncInterceptor.handleDefault(DDAsyncInterceptor.java:53)
> at org.infinispan.interceptors.DDAsyncInterceptor.visitPutMapCommand(DDAsyncInterceptor.java:89)
> at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:68)
> at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndExceptionally(BaseAsyncInterceptor.java:128)
> at org.infinispan.interceptors.impl.InvocationContextInterceptor.visitCommand(InvocationContextInterceptor.java:89)
> at org.infinispan.interceptors.impl.AsyncInterceptorChainImpl.invokeAsync(AsyncInterceptorChainImpl.java:226)
> at org.infinispan.cache.impl.CacheImpl.executeCommandAndCommitIfNeededAsync(CacheImpl.java:1847)
> at org.infinispan.cache.impl.CacheImpl.putAllAsync(CacheImpl.java:1508)
> at org.infinispan.cache.impl.CacheImpl.putAllAsync(CacheImpl.java:1501)
> at org.infinispan.cache.impl.AbstractDelegatingAdvancedCache.putAllAsync(AbstractDelegatingAdvancedCache.java:460)
> at org.infinispan.cache.impl.EncoderCache.putAllAsync(EncoderCache.java:303)
> at org.infinispan.server.hotrod.CacheRequestProcessor.putAllInternal(CacheRequestProcessor.java:415)
> at org.infinispan.server.hotrod.CacheRequestProcessor.putAll(CacheRequestProcessor.java:410)
> at org.infinispan.server.hotrod.HotRodDecoder.switch3(HotRodDecoder.java:1836)
> at org.infinispan.server.hotrod.HotRodDecoder.switch1_0(HotRodDecoder.java:156)
> at org.infinispan.server.hotrod.HotRodDecoder.decode(HotRodDecoder.java:143)
> at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:505)
> at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:444)
> at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:283)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
> at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)
> at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:93)
> at org.infinispan.server.core.transport.StatsChannelHandler.channelRead(StatsChannelHandler.java:26)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
> at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)
> at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1421)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
> at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
> at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:930)
> at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:794)
> at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:424)
> at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:326)
> at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:918)
> at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
> at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
> at java.base/java.lang.Thread.run(Thread.java:834)
> {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 5 months
[JBoss JIRA] (ISPN-10886) Server side objects implementing Serializable causes serialization errors
by Gustavo Fernandes (Jira)
[ https://issues.jboss.org/browse/ISPN-10886?page=com.atlassian.jira.plugin... ]
Gustavo Fernandes updated ISPN-10886:
-------------------------------------
Description:
When storing objects unmarshalled (cache configired with key/value encoding as application/x-java-object) or using custom objects in the server (filters, converters, partition handlers, etc) that implements Serializable, the following exception is thrown:
{noformat}
2019-11-05 10:54:11,389 WARN [org.infinispan.PERSISTENCE] (SINGLE_PORT-ServerIO-5-3) ISPN000559: Cannot marshall 'class org.infinispan.spark.domain.Runner': java.lang.IllegalArgumentException: No marshaller registered for Java type org.infinispan.spark.domain.Runner
at org.infinispan.protostream.impl.SerializationContextImpl.getMarshallerDelegate(SerializationContextImpl.java:279)
at org.infinispan.protostream.WrappedMessage.writeMessage(WrappedMessage.java:240)
at org.infinispan.protostream.ProtobufUtil.toWrappedStream(ProtobufUtil.java:196)
at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToBuffer(PersistenceMarshallerImpl.java:157)
at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToByteBuffer(PersistenceMarshallerImpl.java:137)
at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToByteBuffer(PersistenceMarshallerImpl.java:145)
at org.infinispan.marshall.core.GlobalMarshaller.writeRawUnknown(GlobalMarshaller.java:638)
at org.infinispan.marshall.core.GlobalMarshaller.writeUnknown(GlobalMarshaller.java:627)
at org.infinispan.marshall.core.GlobalMarshaller.writeUnknown(GlobalMarshaller.java:618)
at org.infinispan.marshall.core.GlobalMarshaller.writeNonNullableObject(GlobalMarshaller.java:384)
at org.infinispan.marshall.core.GlobalMarshaller.writeNullableObject(GlobalMarshaller.java:352)
at org.infinispan.marshall.core.BytesObjectOutput.writeObject(BytesObjectOutput.java:26)
at org.infinispan.commands.write.PutKeyValueCommand.writeTo(PutKeyValueCommand.java:81)
at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeCommandParameters(ReplicableCommandExternalizer.java:70)
at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeObject(ReplicableCommandExternalizer.java:66)
at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeObject(ReplicableCommandExternalizer.java:54)
at org.infinispan.marshall.core.GlobalMarshaller.writeInternal(GlobalMarshaller.java:656)
at org.infinispan.marshall.core.GlobalMarshaller.writeNonNullableObject(GlobalMarshaller.java:371)
at org.infinispan.marshall.core.GlobalMarshaller.writeNullableObject(GlobalMarshaller.java:352)
at org.infinispan.marshall.core.BytesObjectOutput.writeObject(BytesObjectOutput.java:26)
at org.infinispan.commands.remote.SingleRpcCommand.writeTo(SingleRpcCommand.java:52)
at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeCommandParameters(ReplicableCommandExternalizer.java:70)
at org.infinispan.marshall.exts.CacheRpcCommandExternalizer.marshallParameters(CacheRpcCommandExternalizer.java:120)
{noformat}
This changed between 10.0.0.CR3 and 10.0.1.Final: although JBoss Marshaller is in the classpath and the Hot Rod client users Jboss marshaller, it tries to use protostream to replicate commands involving those objects
The workaround it to annotate all of them with @SerializeWith and write Externalizers
was:
When storing objects unmarshalled (application/x-java-object) or using custom objects in the server (filters, converters, partition handlers, etc) that implements Serializable, the following exception is thrown:
{noformat}
2019-11-05 10:54:11,389 WARN [org.infinispan.PERSISTENCE] (SINGLE_PORT-ServerIO-5-3) ISPN000559: Cannot marshall 'class org.infinispan.spark.domain.Runner': java.lang.IllegalArgumentException: No marshaller registered for Java type org.infinispan.spark.domain.Runner
at org.infinispan.protostream.impl.SerializationContextImpl.getMarshallerDelegate(SerializationContextImpl.java:279)
at org.infinispan.protostream.WrappedMessage.writeMessage(WrappedMessage.java:240)
at org.infinispan.protostream.ProtobufUtil.toWrappedStream(ProtobufUtil.java:196)
at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToBuffer(PersistenceMarshallerImpl.java:157)
at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToByteBuffer(PersistenceMarshallerImpl.java:137)
at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToByteBuffer(PersistenceMarshallerImpl.java:145)
at org.infinispan.marshall.core.GlobalMarshaller.writeRawUnknown(GlobalMarshaller.java:638)
at org.infinispan.marshall.core.GlobalMarshaller.writeUnknown(GlobalMarshaller.java:627)
at org.infinispan.marshall.core.GlobalMarshaller.writeUnknown(GlobalMarshaller.java:618)
at org.infinispan.marshall.core.GlobalMarshaller.writeNonNullableObject(GlobalMarshaller.java:384)
at org.infinispan.marshall.core.GlobalMarshaller.writeNullableObject(GlobalMarshaller.java:352)
at org.infinispan.marshall.core.BytesObjectOutput.writeObject(BytesObjectOutput.java:26)
at org.infinispan.commands.write.PutKeyValueCommand.writeTo(PutKeyValueCommand.java:81)
at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeCommandParameters(ReplicableCommandExternalizer.java:70)
at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeObject(ReplicableCommandExternalizer.java:66)
at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeObject(ReplicableCommandExternalizer.java:54)
at org.infinispan.marshall.core.GlobalMarshaller.writeInternal(GlobalMarshaller.java:656)
at org.infinispan.marshall.core.GlobalMarshaller.writeNonNullableObject(GlobalMarshaller.java:371)
at org.infinispan.marshall.core.GlobalMarshaller.writeNullableObject(GlobalMarshaller.java:352)
at org.infinispan.marshall.core.BytesObjectOutput.writeObject(BytesObjectOutput.java:26)
at org.infinispan.commands.remote.SingleRpcCommand.writeTo(SingleRpcCommand.java:52)
at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeCommandParameters(ReplicableCommandExternalizer.java:70)
at org.infinispan.marshall.exts.CacheRpcCommandExternalizer.marshallParameters(CacheRpcCommandExternalizer.java:120)
{noformat}
This changed between 10.0.0.CR3 and 10.0.1.Final: although JBoss Marshaller is in the classpath and the Hot Rod client users Jboss marshaller, it tries to use protostream to replicate commands involving those objects
The workaround it to annotate all of them with @SerializeWith and write Externalizers
> Server side objects implementing Serializable causes serialization errors
> -------------------------------------------------------------------------
>
> Key: ISPN-10886
> URL: https://issues.jboss.org/browse/ISPN-10886
> Project: Infinispan
> Issue Type: Bug
> Components: Server
> Affects Versions: 10.0.0.Final, 10.0.1.Final
> Reporter: Gustavo Fernandes
> Priority: Major
>
> When storing objects unmarshalled (cache configired with key/value encoding as application/x-java-object) or using custom objects in the server (filters, converters, partition handlers, etc) that implements Serializable, the following exception is thrown:
> {noformat}
> 2019-11-05 10:54:11,389 WARN [org.infinispan.PERSISTENCE] (SINGLE_PORT-ServerIO-5-3) ISPN000559: Cannot marshall 'class org.infinispan.spark.domain.Runner': java.lang.IllegalArgumentException: No marshaller registered for Java type org.infinispan.spark.domain.Runner
> at org.infinispan.protostream.impl.SerializationContextImpl.getMarshallerDelegate(SerializationContextImpl.java:279)
> at org.infinispan.protostream.WrappedMessage.writeMessage(WrappedMessage.java:240)
> at org.infinispan.protostream.ProtobufUtil.toWrappedStream(ProtobufUtil.java:196)
> at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToBuffer(PersistenceMarshallerImpl.java:157)
> at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToByteBuffer(PersistenceMarshallerImpl.java:137)
> at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToByteBuffer(PersistenceMarshallerImpl.java:145)
> at org.infinispan.marshall.core.GlobalMarshaller.writeRawUnknown(GlobalMarshaller.java:638)
> at org.infinispan.marshall.core.GlobalMarshaller.writeUnknown(GlobalMarshaller.java:627)
> at org.infinispan.marshall.core.GlobalMarshaller.writeUnknown(GlobalMarshaller.java:618)
> at org.infinispan.marshall.core.GlobalMarshaller.writeNonNullableObject(GlobalMarshaller.java:384)
> at org.infinispan.marshall.core.GlobalMarshaller.writeNullableObject(GlobalMarshaller.java:352)
> at org.infinispan.marshall.core.BytesObjectOutput.writeObject(BytesObjectOutput.java:26)
> at org.infinispan.commands.write.PutKeyValueCommand.writeTo(PutKeyValueCommand.java:81)
> at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeCommandParameters(ReplicableCommandExternalizer.java:70)
> at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeObject(ReplicableCommandExternalizer.java:66)
> at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeObject(ReplicableCommandExternalizer.java:54)
> at org.infinispan.marshall.core.GlobalMarshaller.writeInternal(GlobalMarshaller.java:656)
> at org.infinispan.marshall.core.GlobalMarshaller.writeNonNullableObject(GlobalMarshaller.java:371)
> at org.infinispan.marshall.core.GlobalMarshaller.writeNullableObject(GlobalMarshaller.java:352)
> at org.infinispan.marshall.core.BytesObjectOutput.writeObject(BytesObjectOutput.java:26)
> at org.infinispan.commands.remote.SingleRpcCommand.writeTo(SingleRpcCommand.java:52)
> at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeCommandParameters(ReplicableCommandExternalizer.java:70)
> at org.infinispan.marshall.exts.CacheRpcCommandExternalizer.marshallParameters(CacheRpcCommandExternalizer.java:120)
> {noformat}
> This changed between 10.0.0.CR3 and 10.0.1.Final: although JBoss Marshaller is in the classpath and the Hot Rod client users Jboss marshaller, it tries to use protostream to replicate commands involving those objects
> The workaround it to annotate all of them with @SerializeWith and write Externalizers
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 5 months
[JBoss JIRA] (ISPN-10886) Server side objects implementing Serializable causes serialization errors
by Gustavo Fernandes (Jira)
[ https://issues.jboss.org/browse/ISPN-10886?page=com.atlassian.jira.plugin... ]
Gustavo Fernandes updated ISPN-10886:
-------------------------------------
Description:
When storing objects unmarshalled (application/x-java-object) or using custom objects in the server (filters, converters, partition handlers, etc) that implements Serializable, the following exception is thrown:
{noformat}
2019-11-05 10:54:11,389 WARN [org.infinispan.PERSISTENCE] (SINGLE_PORT-ServerIO-5-3) ISPN000559: Cannot marshall 'class org.infinispan.spark.domain.Runner': java.lang.IllegalArgumentException: No marshaller registered for Java type org.infinispan.spark.domain.Runner
at org.infinispan.protostream.impl.SerializationContextImpl.getMarshallerDelegate(SerializationContextImpl.java:279)
at org.infinispan.protostream.WrappedMessage.writeMessage(WrappedMessage.java:240)
at org.infinispan.protostream.ProtobufUtil.toWrappedStream(ProtobufUtil.java:196)
at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToBuffer(PersistenceMarshallerImpl.java:157)
at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToByteBuffer(PersistenceMarshallerImpl.java:137)
at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToByteBuffer(PersistenceMarshallerImpl.java:145)
at org.infinispan.marshall.core.GlobalMarshaller.writeRawUnknown(GlobalMarshaller.java:638)
at org.infinispan.marshall.core.GlobalMarshaller.writeUnknown(GlobalMarshaller.java:627)
at org.infinispan.marshall.core.GlobalMarshaller.writeUnknown(GlobalMarshaller.java:618)
at org.infinispan.marshall.core.GlobalMarshaller.writeNonNullableObject(GlobalMarshaller.java:384)
at org.infinispan.marshall.core.GlobalMarshaller.writeNullableObject(GlobalMarshaller.java:352)
at org.infinispan.marshall.core.BytesObjectOutput.writeObject(BytesObjectOutput.java:26)
at org.infinispan.commands.write.PutKeyValueCommand.writeTo(PutKeyValueCommand.java:81)
at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeCommandParameters(ReplicableCommandExternalizer.java:70)
at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeObject(ReplicableCommandExternalizer.java:66)
at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeObject(ReplicableCommandExternalizer.java:54)
at org.infinispan.marshall.core.GlobalMarshaller.writeInternal(GlobalMarshaller.java:656)
at org.infinispan.marshall.core.GlobalMarshaller.writeNonNullableObject(GlobalMarshaller.java:371)
at org.infinispan.marshall.core.GlobalMarshaller.writeNullableObject(GlobalMarshaller.java:352)
at org.infinispan.marshall.core.BytesObjectOutput.writeObject(BytesObjectOutput.java:26)
at org.infinispan.commands.remote.SingleRpcCommand.writeTo(SingleRpcCommand.java:52)
at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeCommandParameters(ReplicableCommandExternalizer.java:70)
at org.infinispan.marshall.exts.CacheRpcCommandExternalizer.marshallParameters(CacheRpcCommandExternalizer.java:120)
{noformat}
This changed between 10.0.0.CR3 and 10.0.1.Final: although JBoss Marshaller is in the classpath and the Hot Rod client users Jboss marshaller, it tries to use protostream to replicate commands involving those objects
The workaround it to annotate all of them with @SerializeWith and write Externalizers
was:
This changed between 10.0.0.CR3 and 10.0.1.Final: filters/converters/entities deployed on the server that implements Serializable don't work any more: although JBoss Marshaller is in the classpath and the Hot Rod client users Jboss marshaller, it tries to use protostream to replicate commands involving those objects
The workaround it to annotate all of them with @SerializeWith and write Externalizers
> Server side objects implementing Serializable causes serialization errors
> -------------------------------------------------------------------------
>
> Key: ISPN-10886
> URL: https://issues.jboss.org/browse/ISPN-10886
> Project: Infinispan
> Issue Type: Bug
> Components: Server
> Affects Versions: 10.0.0.Final, 10.0.1.Final
> Reporter: Gustavo Fernandes
> Priority: Major
>
> When storing objects unmarshalled (application/x-java-object) or using custom objects in the server (filters, converters, partition handlers, etc) that implements Serializable, the following exception is thrown:
> {noformat}
> 2019-11-05 10:54:11,389 WARN [org.infinispan.PERSISTENCE] (SINGLE_PORT-ServerIO-5-3) ISPN000559: Cannot marshall 'class org.infinispan.spark.domain.Runner': java.lang.IllegalArgumentException: No marshaller registered for Java type org.infinispan.spark.domain.Runner
> at org.infinispan.protostream.impl.SerializationContextImpl.getMarshallerDelegate(SerializationContextImpl.java:279)
> at org.infinispan.protostream.WrappedMessage.writeMessage(WrappedMessage.java:240)
> at org.infinispan.protostream.ProtobufUtil.toWrappedStream(ProtobufUtil.java:196)
> at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToBuffer(PersistenceMarshallerImpl.java:157)
> at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToByteBuffer(PersistenceMarshallerImpl.java:137)
> at org.infinispan.marshall.persistence.impl.PersistenceMarshallerImpl.objectToByteBuffer(PersistenceMarshallerImpl.java:145)
> at org.infinispan.marshall.core.GlobalMarshaller.writeRawUnknown(GlobalMarshaller.java:638)
> at org.infinispan.marshall.core.GlobalMarshaller.writeUnknown(GlobalMarshaller.java:627)
> at org.infinispan.marshall.core.GlobalMarshaller.writeUnknown(GlobalMarshaller.java:618)
> at org.infinispan.marshall.core.GlobalMarshaller.writeNonNullableObject(GlobalMarshaller.java:384)
> at org.infinispan.marshall.core.GlobalMarshaller.writeNullableObject(GlobalMarshaller.java:352)
> at org.infinispan.marshall.core.BytesObjectOutput.writeObject(BytesObjectOutput.java:26)
> at org.infinispan.commands.write.PutKeyValueCommand.writeTo(PutKeyValueCommand.java:81)
> at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeCommandParameters(ReplicableCommandExternalizer.java:70)
> at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeObject(ReplicableCommandExternalizer.java:66)
> at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeObject(ReplicableCommandExternalizer.java:54)
> at org.infinispan.marshall.core.GlobalMarshaller.writeInternal(GlobalMarshaller.java:656)
> at org.infinispan.marshall.core.GlobalMarshaller.writeNonNullableObject(GlobalMarshaller.java:371)
> at org.infinispan.marshall.core.GlobalMarshaller.writeNullableObject(GlobalMarshaller.java:352)
> at org.infinispan.marshall.core.BytesObjectOutput.writeObject(BytesObjectOutput.java:26)
> at org.infinispan.commands.remote.SingleRpcCommand.writeTo(SingleRpcCommand.java:52)
> at org.infinispan.marshall.exts.ReplicableCommandExternalizer.writeCommandParameters(ReplicableCommandExternalizer.java:70)
> at org.infinispan.marshall.exts.CacheRpcCommandExternalizer.marshallParameters(CacheRpcCommandExternalizer.java:120)
> {noformat}
> This changed between 10.0.0.CR3 and 10.0.1.Final: although JBoss Marshaller is in the classpath and the Hot Rod client users Jboss marshaller, it tries to use protostream to replicate commands involving those objects
> The workaround it to annotate all of them with @SerializeWith and write Externalizers
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 5 months
[JBoss JIRA] (ISPN-10901) Deprecate Transport configuration and always use JGroupsTransport
by Dan Berindei (Jira)
Dan Berindei created ISPN-10901:
-----------------------------------
Summary: Deprecate Transport configuration and always use JGroupsTransport
Key: ISPN-10901
URL: https://issues.jboss.org/browse/ISPN-10901
Project: Infinispan
Issue Type: Task
Components: Configuration, Core
Reporter: Dan Berindei
Assignee: Dan Berindei
Fix For: 10.1.0.Beta1
Deprecate the {{TransportConfiguration.transport()}} configuration and surface {{channelConfigurator}} or {{channelLookup}} (or a mixture of the 2) as attributes instead of properties.
The {{configurationX}} properties should also be attributes in {{TransportConfiguration}}.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 5 months
[JBoss JIRA] (ISPN-9620) Rolling Upgrade Marshaller Changes
by Ryan Emerson (Jira)
[ https://issues.jboss.org/browse/ISPN-9620?page=com.atlassian.jira.plugin.... ]
Ryan Emerson commented on ISPN-9620:
------------------------------------
[~gustavonalle] This is built upon what was discussed at last years F2F. It is a long term goal we're working towards and does not intend to replace the current rolling upgrades that we have. The idea is that we get to the stage where we can do the following types of upgrade:
# Offline upgrade (start/stop). Cache stores are dumped using the old ISPN cluster, new ISPN cluster brought up using the old date.
# [Kuberenetes Rolling updates|https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/]. This is the long term goal, which requires more than marshalling changes, e.g. versioned interceptor stacks. The marshalling changes are required in this context to allow over the air compatibility between ISPN versions.
> Rolling Upgrade Marshaller Changes
> ----------------------------------
>
> Key: ISPN-9620
> URL: https://issues.jboss.org/browse/ISPN-9620
> Project: Infinispan
> Issue Type: Enhancement
> Components: Core, Loaders and Stores
> Affects Versions: 9.4.0.Final
> Reporter: Ryan Emerson
> Assignee: Ryan Emerson
> Priority: Major
> Fix For: 10.1.0.Final
>
>
> In order to allow for compatibility between infinispan versions it is necessary for us to utilise a marshalling implementation at both the cluster (internal node-to-node communication) and persistence layer that is strictly defined but allows for future changes. This is necessary in order to facilitate both rolling and start/stop upgrades. Protocol buffers should be utilised as the wire/storage format, with protostream providing the implementation.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 5 months