Details
-
Bug
-
Resolution: Done
-
Major
-
14.0.0.CR1
-
None
Description
When using `putAll` in scattered mode with a single member throws a NPE:
2022-07-27 10:40:16,977 ERROR (non-blocking-thread--p2-t8) [org.infinispan.server.hotrod.BaseRequestProcessor] ISPN005003: Exception reported org.infinispan.commons.CacheException: java.lang.NullPointerException at org.infinispan.remoting.rpc.RpcManagerImpl.rethrowAsCacheException(RpcManagerImpl.java:357) at org.infinispan.remoting.rpc.RpcManagerImpl.errorReplicating(RpcManagerImpl.java:430) at org.infinispan.remoting.rpc.RpcManagerImpl.invokeCommand(RpcManagerImpl.java:187) at org.infinispan.interceptors.distribution.ScatteredDistributionInterceptor$LocalWriteManyHandler.accept(ScatteredDistributionInterceptor.java:1519) at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndFinally(BaseAsyncInterceptor.java:168) at org.infinispan.interceptors.distribution.ScatteredDistributionInterceptor.handleWriteManyOnOrigin(ScatteredDistributionInterceptor.java:1075) at org.infinispan.interceptors.distribution.ScatteredDistributionInterceptor.handleWriteManyCommand(ScatteredDistributionInterceptor.java:1038) at org.infinispan.interceptors.distribution.ScatteredDistributionInterceptor.visitPutMapCommand(ScatteredDistributionInterceptor.java:729) at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:74) at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextThenApply(BaseAsyncInterceptor.java:79) at org.infinispan.interceptors.impl.ScatteredCacheWriterInterceptor.visitPutMapCommand(ScatteredCacheWriterInterceptor.java:250) at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:74) at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:59) at org.infinispan.interceptors.DDAsyncInterceptor.handleDefault(DDAsyncInterceptor.java:54) at org.infinispan.interceptors.DDAsyncInterceptor.visitPutMapCommand(DDAsyncInterceptor.java:90) at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:74) at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:59) at org.infinispan.interceptors.BaseAsyncInterceptor.asyncInvokeNext(BaseAsyncInterceptor.java:232) at org.infinispan.interceptors.impl.BiasedEntryWrappingInterceptor.setSkipRemoteGetsAndInvokeNextForManyEntriesCommand(BiasedEntryWrappingInterceptor.java:46) at org.infinispan.interceptors.impl.EntryWrappingInterceptor.visitPutMapCommand(EntryWrappingInterceptor.java:446) at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:74) at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:59) at org.infinispan.interceptors.impl.PrefetchInterceptor.handleWriteManyCommand(PrefetchInterceptor.java:373) at org.infinispan.interceptors.impl.PrefetchInterceptor.visitPutMapCommand(PrefetchInterceptor.java:434) at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:74) at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndHandle(BaseAsyncInterceptor.java:188) at org.infinispan.statetransfer.StateTransferInterceptor.handleNonTxWriteCommand(StateTransferInterceptor.java:312) at org.infinispan.statetransfer.StateTransferInterceptor.handleWriteCommand(StateTransferInterceptor.java:256) at org.infinispan.statetransfer.StateTransferInterceptor.visitPutMapCommand(StateTransferInterceptor.java:107) at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:74) at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNextAndFinally(BaseAsyncInterceptor.java:155) at org.infinispan.interceptors.impl.CacheMgmtInterceptor.visitPutMapCommand(CacheMgmtInterceptor.java:210) at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:74) at org.infinispan.interceptors.BaseAsyncInterceptor.invokeNext(BaseAsyncInterceptor.java:59) at org.infinispan.interceptors.DDAsyncInterceptor.handleDefault(DDAsyncInterceptor.java:54) at org.infinispan.interceptors.DDAsyncInterceptor.visitPutMapCommand(DDAsyncInterceptor.java:90) at org.infinispan.commands.write.PutMapCommand.acceptVisitor(PutMapCommand.java:74) 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:220) at org.infinispan.cache.impl.InvocationHelper.doInvokeAsync(InvocationHelper.java:318) at org.infinispan.cache.impl.InvocationHelper.invokeAsync(InvocationHelper.java:156) at org.infinispan.cache.impl.InvocationHelper.invokeAsync(InvocationHelper.java:139) at org.infinispan.cache.impl.CacheImpl.putAllAsync(CacheImpl.java:1451) at org.infinispan.cache.impl.CacheImpl.putAllAsync(CacheImpl.java:1444) at org.infinispan.cache.impl.EncoderCache.putAllAsync(EncoderCache.java:291) at org.infinispan.server.hotrod.CacheRequestProcessor.putAllInternal(CacheRequestProcessor.java:454) at org.infinispan.server.hotrod.CacheRequestProcessor.putAll(CacheRequestProcessor.java:449) at org.infinispan.server.hotrod.HotRodDecoder.switch3(HotRodDecoder.java:2036) at org.infinispan.server.hotrod.HotRodDecoder.switch1_0(HotRodDecoder.java:164) at org.infinispan.server.hotrod.HotRodDecoder.decode(HotRodDecoder.java:151) at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:510) at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:449) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:279) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.channel.ChannelInboundHandlerAdapter.channelRead(ChannelInboundHandlerAdapter.java:93) at org.infinispan.server.core.transport.StatsChannelHandler.channelRead(StatsChannelHandler.java:28) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:800) at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:487) at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:385) at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: java.lang.NullPointerException at org.infinispan.remoting.transport.jgroups.JGroupsTransport.invokeCommand(JGroupsTransport.java:1017) at org.infinispan.remoting.rpc.RpcManagerImpl.invokeCommand(RpcManagerImpl.java:184) ... 69 more