Vadim Pakhnushev created IGNITE-24508:
-----------------------------------------

             Summary: Putting ignite-jdbc into the classpath of embedded node 
breaks client connections
                 Key: IGNITE-24508
                 URL: https://issues.apache.org/jira/browse/IGNITE-24508
             Project: Ignite
          Issue Type: Bug
          Components: clients, jdbc
    Affects Versions: 3.0
            Reporter: Vadim Pakhnushev
            Assignee: Vadim Pakhnushev


When embedded Ignite application has {{ignite-jdbc}} in its classpath, clients 
cannot connect.
The issue is that {{ClientMessageDecoder}} class used in the 
{{ClientHandlerModule}} is taken from the {{ignite-jdbc}} module, not from the 
{{ignite-client-common}}. But {{ignite-jdbc}} jar is shaded and its netty 
dependency is relocated to the {{org.apache.ignite.shaded.io.netty}} package. 
So the {{ClientMessageDecoder}} eventually implements 
{{org.gridgain.shaded.io.netty.channel.ChannelHandler}}, but the 
{{ClientHandlerModule}} tries to create an array of 
{{io.netty.channel.ChannelHandler}} and {{ArrayStoreException}} is thrown.
Separate issue is that this exception is silently ignored, resulting in server 
only printing {noformat}[DEBUG][node-srv-worker-1][ClientHandlerModule] New 
client connection [connectionId=1, remoteAddress=/127.0.0.1:62949]{noformat} in 
the debug level and client failing to connect with exceptions cause by 
{{java.io.IOException: Connection reset by peer}}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to