[jira] [Commented] (IGNITE-11730) Discovery Compression check fails when nodes reconnect to cluster
[ https://issues.apache.org/jira/browse/IGNITE-11730?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16821213#comment-16821213 ] Alexey Goncharuk commented on IGNITE-11730: --- [~akalashnikov] changes look good to me. > Discovery Compression check fails when nodes reconnect to cluster > - > > Key: IGNITE-11730 > URL: https://issues.apache.org/jira/browse/IGNITE-11730 > Project: Ignite > Issue Type: Bug > Components: general >Affects Versions: 2.7 >Reporter: Ilya Kasnacheev >Assignee: Anton Kalashnikov >Priority: Major > Fix For: 2.8 > > Time Spent: 20m > Remaining Estimate: 0h > > There is a check that Discovery Data Bag compression is supported by all > nodes. > Apparently this check does not work when nodes reconnect after server > restart. When there is at least one client node that does not support this > feature, clients will still send zipped data that server would not > understand, leaving to following server error: > {code} > [15:46:47,101][SEVERE][tcp-disco-msg-worker-#2][TcpDiscoverySpi] Failed to > unmarshal discovery data for component: 0 > class org.apache.ignite.IgniteCheckedException: Failed to deserialize object > with given class loader: sun.misc.Launcher$AppClassLoader@18b4aac2 > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:147) > at > org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:94) > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:161) > at > org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:82) > at > org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:9922) > at > org.apache.ignite.spi.discovery.tcp.internal.DiscoveryDataPacket.unmarshalData(DiscoveryDataPacket.java:290) > at > org.apache.ignite.spi.discovery.tcp.internal.DiscoveryDataPacket.unmarshalJoiningNodeData(DiscoveryDataPacket.java:169) > at > org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.onExchange(TcpDiscoverySpi.java:2076) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processNodeAddedMessage(ServerImpl.java:4620) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processJoinRequestMessage(ServerImpl.java:4307) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processMessage(ServerImpl.java:2962) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processMessage(ServerImpl.java:2729) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$MessageWorker.body(ServerImpl.java:7496) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.body(ServerImpl.java:2833) > at > org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$MessageWorkerThread.body(ServerImpl.java:7427) > at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62) > Caused by: java.io.EOFException > at > java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2638) > at > java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:3113) > at > java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:853) > at java.io.ObjectInputStream.(ObjectInputStream.java:349) > at > org.apache.ignite.marshaller.jdk.JdkMarshallerObjectInputStream.(JdkMarshallerObjectInputStream.java:43) > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:137) > ... 16 more > {code} > and client nodes will fail with following error: > {code} > [15:46:47,175][SEVERE][tcp-client-disco-msg-worker-#4][] Critical system > error detected. Will be handled accordingly to configured handler [hnd=class > o.a.i.failure.StopNodeOrHaltFailureHandler, failureCtx=FailureContext > [type=CRITICAL_ERROR, err=class o.a.i.IgniteException: Node with > BaselineTopology cannot join mixed cluster running in compatibility mode]] > class org.apache.ignite.IgniteException: Node with BaselineTopology cannot > join mixed cluster running in compatibility mode > at > org.apache.ignite.internal.processors.cluster.GridClusterStateProcessor.onGridDataReceived(GridClusterStateProcessor.java:727) > at > org.apache.ignite.internal.managers.discovery.GridDiscoveryManager$5.onExchange(GridDiscoveryManager.java:899) > at > org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.onExchange(TcpDiscoverySpi.java:2083) > at > org.apach
[jira] [Commented] (IGNITE-11730) Discovery Compression check fails when nodes reconnect to cluster
[ https://issues.apache.org/jira/browse/IGNITE-11730?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16818049#comment-16818049 ] Ignite TC Bot commented on IGNITE-11730: {panel:title=--> Run :: All: No blockers found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel} [TeamCity *--> Run :: All* Results|https://ci.ignite.apache.org/viewLog.html?buildId=360&buildTypeId=IgniteTests24Java8_RunAll] > Discovery Compression check fails when nodes reconnect to cluster > - > > Key: IGNITE-11730 > URL: https://issues.apache.org/jira/browse/IGNITE-11730 > Project: Ignite > Issue Type: Bug > Components: general >Affects Versions: 2.7 >Reporter: Ilya Kasnacheev >Assignee: Anton Kalashnikov >Priority: Major > > There is a check that Discovery Data Bag compression is supported by all > nodes. > Apparently this check does not work when nodes reconnect after server > restart. When there is at least one client node that does not support this > feature, clients will still send zipped data that server would not > understand, leaving to following server error: > {code} > [15:46:47,101][SEVERE][tcp-disco-msg-worker-#2][TcpDiscoverySpi] Failed to > unmarshal discovery data for component: 0 > class org.apache.ignite.IgniteCheckedException: Failed to deserialize object > with given class loader: sun.misc.Launcher$AppClassLoader@18b4aac2 > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:147) > at > org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:94) > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:161) > at > org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:82) > at > org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:9922) > at > org.apache.ignite.spi.discovery.tcp.internal.DiscoveryDataPacket.unmarshalData(DiscoveryDataPacket.java:290) > at > org.apache.ignite.spi.discovery.tcp.internal.DiscoveryDataPacket.unmarshalJoiningNodeData(DiscoveryDataPacket.java:169) > at > org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.onExchange(TcpDiscoverySpi.java:2076) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processNodeAddedMessage(ServerImpl.java:4620) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processJoinRequestMessage(ServerImpl.java:4307) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processMessage(ServerImpl.java:2962) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processMessage(ServerImpl.java:2729) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$MessageWorker.body(ServerImpl.java:7496) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.body(ServerImpl.java:2833) > at > org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$MessageWorkerThread.body(ServerImpl.java:7427) > at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62) > Caused by: java.io.EOFException > at > java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2638) > at > java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:3113) > at > java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:853) > at java.io.ObjectInputStream.(ObjectInputStream.java:349) > at > org.apache.ignite.marshaller.jdk.JdkMarshallerObjectInputStream.(JdkMarshallerObjectInputStream.java:43) > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:137) > ... 16 more > {code} > and client nodes will fail with following error: > {code} > [15:46:47,175][SEVERE][tcp-client-disco-msg-worker-#4][] Critical system > error detected. Will be handled accordingly to configured handler [hnd=class > o.a.i.failure.StopNodeOrHaltFailureHandler, failureCtx=FailureContext > [type=CRITICAL_ERROR, err=class o.a.i.IgniteException: Node with > BaselineTopology cannot join mixed cluster running in compatibility mode]] > class org.apache.ignite.IgniteException: Node with BaselineTopology cannot > join mixed cluster running in compatibility mode > at > org.apache.ignite.internal.processors.cluster.GridClusterStateProcessor.onGridDataReceived(GridClusterStateProcessor.java:727) > at > org.apache.ignite.internal.managers.discovery.GridDiscoveryManager$5.onExchange(GridDiscoveryManager.java:899) > at
[jira] [Commented] (IGNITE-11730) Discovery Compression check fails when nodes reconnect to cluster
[ https://issues.apache.org/jira/browse/IGNITE-11730?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16816200#comment-16816200 ] Ilya Kasnacheev commented on IGNITE-11730: -- [~akalashnikov] seems like this fix is working, I can no longer cause clients to segment. > Discovery Compression check fails when nodes reconnect to cluster > - > > Key: IGNITE-11730 > URL: https://issues.apache.org/jira/browse/IGNITE-11730 > Project: Ignite > Issue Type: Bug > Components: general >Affects Versions: 2.7 >Reporter: Ilya Kasnacheev >Assignee: Anton Kalashnikov >Priority: Major > > There is a check that Discovery Data Bag compression is supported by all > nodes. > Apparently this check does not work when nodes reconnect after server > restart. When there is at least one client node that does not support this > feature, clients will still send zipped data that server would not > understand, leaving to following server error: > {code} > [15:46:47,101][SEVERE][tcp-disco-msg-worker-#2][TcpDiscoverySpi] Failed to > unmarshal discovery data for component: 0 > class org.apache.ignite.IgniteCheckedException: Failed to deserialize object > with given class loader: sun.misc.Launcher$AppClassLoader@18b4aac2 > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:147) > at > org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:94) > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:161) > at > org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:82) > at > org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:9922) > at > org.apache.ignite.spi.discovery.tcp.internal.DiscoveryDataPacket.unmarshalData(DiscoveryDataPacket.java:290) > at > org.apache.ignite.spi.discovery.tcp.internal.DiscoveryDataPacket.unmarshalJoiningNodeData(DiscoveryDataPacket.java:169) > at > org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.onExchange(TcpDiscoverySpi.java:2076) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processNodeAddedMessage(ServerImpl.java:4620) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processJoinRequestMessage(ServerImpl.java:4307) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processMessage(ServerImpl.java:2962) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processMessage(ServerImpl.java:2729) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$MessageWorker.body(ServerImpl.java:7496) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.body(ServerImpl.java:2833) > at > org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$MessageWorkerThread.body(ServerImpl.java:7427) > at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62) > Caused by: java.io.EOFException > at > java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2638) > at > java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:3113) > at > java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:853) > at java.io.ObjectInputStream.(ObjectInputStream.java:349) > at > org.apache.ignite.marshaller.jdk.JdkMarshallerObjectInputStream.(JdkMarshallerObjectInputStream.java:43) > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:137) > ... 16 more > {code} > and client nodes will fail with following error: > {code} > [15:46:47,175][SEVERE][tcp-client-disco-msg-worker-#4][] Critical system > error detected. Will be handled accordingly to configured handler [hnd=class > o.a.i.failure.StopNodeOrHaltFailureHandler, failureCtx=FailureContext > [type=CRITICAL_ERROR, err=class o.a.i.IgniteException: Node with > BaselineTopology cannot join mixed cluster running in compatibility mode]] > class org.apache.ignite.IgniteException: Node with BaselineTopology cannot > join mixed cluster running in compatibility mode > at > org.apache.ignite.internal.processors.cluster.GridClusterStateProcessor.onGridDataReceived(GridClusterStateProcessor.java:727) > at > org.apache.ignite.internal.managers.discovery.GridDiscoveryManager$5.onExchange(GridDiscoveryManager.java:899) > at > org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.onExchange(TcpDiscoverySpi.java:2083) > at > org.apache.ignite.spi.discovery.tcp.ClientI
[jira] [Commented] (IGNITE-11730) Discovery Compression check fails when nodes reconnect to cluster
[ https://issues.apache.org/jira/browse/IGNITE-11730?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16815417#comment-16815417 ] Ilya Kasnacheev commented on IGNITE-11730: -- Caused by IGNITE-11262 > Discovery Compression check fails when nodes reconnect to cluster > - > > Key: IGNITE-11730 > URL: https://issues.apache.org/jira/browse/IGNITE-11730 > Project: Ignite > Issue Type: Bug > Components: general >Affects Versions: 2.7 >Reporter: Ilya Kasnacheev >Priority: Major > > There is a check that Discovery Data Bag compression is supported by all > nodes. > Apparently this check does not work when nodes reconnect after server > restart. When there is at least one client node that does not support this > feature, clients will still send zipped data that server would not > understand, leaving to following server error: > {code} > [15:46:47,101][SEVERE][tcp-disco-msg-worker-#2][TcpDiscoverySpi] Failed to > unmarshal discovery data for component: 0 > class org.apache.ignite.IgniteCheckedException: Failed to deserialize object > with given class loader: sun.misc.Launcher$AppClassLoader@18b4aac2 > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:147) > at > org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:94) > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:161) > at > org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:82) > at > org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:9922) > at > org.apache.ignite.spi.discovery.tcp.internal.DiscoveryDataPacket.unmarshalData(DiscoveryDataPacket.java:290) > at > org.apache.ignite.spi.discovery.tcp.internal.DiscoveryDataPacket.unmarshalJoiningNodeData(DiscoveryDataPacket.java:169) > at > org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.onExchange(TcpDiscoverySpi.java:2076) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processNodeAddedMessage(ServerImpl.java:4620) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processJoinRequestMessage(ServerImpl.java:4307) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processMessage(ServerImpl.java:2962) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.processMessage(ServerImpl.java:2729) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$MessageWorker.body(ServerImpl.java:7496) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$RingMessageWorker.body(ServerImpl.java:2833) > at > org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) > at > org.apache.ignite.spi.discovery.tcp.ServerImpl$MessageWorkerThread.body(ServerImpl.java:7427) > at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62) > Caused by: java.io.EOFException > at > java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2638) > at > java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:3113) > at > java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:853) > at java.io.ObjectInputStream.(ObjectInputStream.java:349) > at > org.apache.ignite.marshaller.jdk.JdkMarshallerObjectInputStream.(JdkMarshallerObjectInputStream.java:43) > at > org.apache.ignite.marshaller.jdk.JdkMarshaller.unmarshal0(JdkMarshaller.java:137) > ... 16 more > {code} > and client nodes will fail with following error: > {code} > [15:46:47,175][SEVERE][tcp-client-disco-msg-worker-#4][] Critical system > error detected. Will be handled accordingly to configured handler [hnd=class > o.a.i.failure.StopNodeOrHaltFailureHandler, failureCtx=FailureContext > [type=CRITICAL_ERROR, err=class o.a.i.IgniteException: Node with > BaselineTopology cannot join mixed cluster running in compatibility mode]] > class org.apache.ignite.IgniteException: Node with BaselineTopology cannot > join mixed cluster running in compatibility mode > at > org.apache.ignite.internal.processors.cluster.GridClusterStateProcessor.onGridDataReceived(GridClusterStateProcessor.java:727) > at > org.apache.ignite.internal.managers.discovery.GridDiscoveryManager$5.onExchange(GridDiscoveryManager.java:899) > at > org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi.onExchange(TcpDiscoverySpi.java:2083) > at > org.apache.ignite.spi.discovery.tcp.ClientImpl$MessageWorker.processNodeAddFinishedMessage(ClientImpl.java:2149) > at > org.apache.ignite.spi.d