[ https://issues.apache.org/jira/browse/IGNITE-20275?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17760895#comment-17760895 ]
Pavel Tupitsyn commented on IGNITE-20275: ----------------------------------------- Merged to main: f7b464cef7c6df2c97f5557ea32dd07fe5abf869 > AssertionError in ClientInboundMessageHandler ctor - race condition > ------------------------------------------------------------------- > > Key: IGNITE-20275 > URL: https://issues.apache.org/jira/browse/IGNITE-20275 > Project: Ignite > Issue Type: Bug > Components: thin client > Affects Versions: 3.0.0-beta1 > Reporter: Pavel Tupitsyn > Assignee: Pavel Tupitsyn > Priority: Blocker > Labels: ignite-3 > Fix For: 3.0.0-beta2 > > Time Spent: 20m > Remaining Estimate: 0h > > {code} > [2023-08-24T06:52:18,812][WARN > ][TestServer--srv-worker-1][ChannelInitializer] Failed to initialize a > channel. Closing: [id: 0x252ff875, L:/127.0.0.1:10903 - R:/127.0.0.1:52514] > java.lang.AssertionError: null > at > org.apache.ignite.client.handler.ClientInboundMessageHandler.<init>(ClientInboundMessageHandler.java:215) > ~[ignite-client-handler-3.0.0-SNAPSHOT.jar:?] > at > org.apache.ignite.client.handler.ClientHandlerModule.createInboundMessageHandler(ClientHandlerModule.java:291) > ~[ignite-client-handler-3.0.0-SNAPSHOT.jar:?] > at > org.apache.ignite.client.handler.ClientHandlerModule$1.initChannel(ClientHandlerModule.java:254) > ~[ignite-client-handler-3.0.0-SNAPSHOT.jar:?] > at > io.netty.channel.ChannelInitializer.initChannel(ChannelInitializer.java:129) > ~[netty-transport-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.channel.ChannelInitializer.handlerAdded(ChannelInitializer.java:112) > ~[netty-transport-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.channel.AbstractChannelHandlerContext.callHandlerAdded(AbstractChannelHandlerContext.java:1114) > ~[netty-transport-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.channel.DefaultChannelPipeline.callHandlerAdded0(DefaultChannelPipeline.java:609) > ~[netty-transport-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.channel.DefaultChannelPipeline.access$100(DefaultChannelPipeline.java:46) > ~[netty-transport-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.channel.DefaultChannelPipeline$PendingHandlerAddedTask.execute(DefaultChannelPipeline.java:1463) > ~[netty-transport-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.channel.DefaultChannelPipeline.callHandlerAddedForAllHandlers(DefaultChannelPipeline.java:1115) > ~[netty-transport-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.channel.DefaultChannelPipeline.invokeHandlerAddedIfNeeded(DefaultChannelPipeline.java:650) > ~[netty-transport-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.channel.AbstractChannel$AbstractUnsafe.register0(AbstractChannel.java:514) > ~[netty-transport-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.channel.AbstractChannel$AbstractUnsafe.access$200(AbstractChannel.java:429) > ~[netty-transport-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.channel.AbstractChannel$AbstractUnsafe$1.run(AbstractChannel.java:486) > ~[netty-transport-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174) > ~[netty-common-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167) > ~[netty-common-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470) > ~[netty-common-4.1.87.Final.jar:4.1.87.Final] > at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569) > ~[netty-transport-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) > ~[netty-common-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) > ~[netty-common-4.1.87.Final.jar:4.1.87.Final] > at > io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) > ~[netty-common-4.1.87.Final.jar:4.1.87.Final] > at java.lang.Thread.run(Thread.java:834) ~[?:?] > {code} > Looks like a race condition in *ClientHandlerModule* between: > * clusterId = clusterIdSupplier.get().join(); > * createInboundMessageHandler (which passes clusterId to > ClientInboundMessageHandler) -- This message was sent by Atlassian Jira (v8.20.10#820010)