-
Bug
-
Resolution: Obsolete
-
Major
-
None
-
None
-
None
When upping the BaseNonBlockingStoreTest segments from 4 to 140 the test will fail every time. It seems the issue is that iteration with the RemoteStore identifies the key as the wrong segment causing an issue.
Internally the key is stored under segment 67, but the client thinks it maps to segment 55 which was not requested and gets an error saying segment 55 was already completed.
This seems to be caused by the segment calculation from the key not taking into account that the entry is stored using a wrapped MarshallableUserObject. The key is a simple String though and probably shouldn't need wrapping.
https://ci.infinispan.org/blue/organizations/jenkins/Infinispan/detail/PR-10630/3/tests/
Error Segment 55 already completed Stacktrace java.lang.IllegalStateException: Segment 55 already completed at org.infinispan.client.hotrod.impl.iteration.SegmentKeyTracker.track(SegmentKeyTracker.java:47) at org.infinispan.client.hotrod.impl.operations.IterationNextOperation.acceptResponse(IterationNextOperation.java:114) at org.infinispan.client.hotrod.impl.transport.netty.HeaderDecoder.decode(HeaderDecoder.java:145) at org.infinispan.client.hotrod.impl.transport.netty.HintedReplayingDecoder.callDecode(HintedReplayingDecoder.java:94) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:290) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) 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:499) at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:397) 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.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Suppressed: org.infinispan.commons.util.logging.TraceException at org.infinispan.client.hotrod.impl.iteration.RemoteInnerPublisherHandler.handleThrowableInResponse(RemoteInnerPublisherHandler.java:129) at org.infinispan.client.hotrod.impl.iteration.RemoteInnerPublisherHandler.handleThrowableInResponse(RemoteInnerPublisherHandler.java:23) at org.infinispan.commons.reactive.AbstractAsyncPublisherHandler$ResponseConsumer.accept(AbstractAsyncPublisherHandler.java:186) at org.infinispan.commons.reactive.AbstractAsyncPublisherHandler$ResponseConsumer.accept(AbstractAsyncPublisherHandler.java:182) 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.client.hotrod.impl.operations.HotRodOperation.completeExceptionally(HotRodOperation.java:164) at org.infinispan.client.hotrod.impl.operations.HotRodOperation.exceptionCaught(HotRodOperation.java:111) at org.infinispan.client.hotrod.impl.transport.netty.HeaderDecoder.exceptionCaught(HeaderDecoder.java:203) at io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:346) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:447) ... 18 more