Hello
I'm running Ignite node (v. 2.7.0) inside Karaf 4.2.0 as part of my application. The problem that I discovered that I'm unable to join multiple such nodes into a cluster. When a new node is joining an existing node it sends its node data which is supposed to be unmarshalled and validated in org.apache.ignite.internal.processors.cluster.GridClusterStateProcessor.vali dateNode(). The thing is that existing node cannot unmarshal the data and therefore rejects join request from new node. Error is: Error on unmarshalling discovery data from node 10.0.2.15,127.0.0.1,172.17.0.1:47501: Failed to find class with given class loader for unmarshalling (make sure same versions of all classes are available on all nodes or enable peer-class-loading) [clsLdr=jdk.internal.loader.ClassLoaders$AppClassLoader@5c0369c4, cls=org.apache.ignite.internal.processors.cluster.DiscoveryDataClusterState] ; node is not allowed to join This is the code that does unmarshalling: joiningNodeState = marsh.unmarshal((byte[]) discoData.joiningNodeData(), Thread.currentThread().getContextClassLoader()); (link to line https://github.com/apache/ignite/blob/924139d0a8929e46634f91c5be87c9b9dc2cbb 11/modules/core/src/main/java/org/apache/ignite/internal/processors/cluster/ GridClusterStateProcessor.java#L967) Apparently jdk.internal.loader.ClassLoaders$AppClassLoader@ is returned from Thread.currentThread().getContextClassLoader(). But this won't work for OSGI because classes of ignite-osgi are only available in bundle classloader and none of them are available in any other classloader! There's special classloader created for Ignite in ignite-osgi module in IgniteAbstractOsgiContextActivator.start() and propagated to IgniteConfiguration object ( line https://github.com/apache/ignite/blob/924139d0a8929e46634f91c5be87c9b9dc2cbb 11/modules/osgi/src/main/java/org/apache/ignite/osgi/IgniteAbstractOsgiConte xtActivator.java#L102) Question is what this special classloader is used for and why it doesn't appear in output from Thread.currentThread().getContextClassLoader()in GridClusterStateProcessor.validateNode(). Just in case, here is link to my project on GitHub: https://github.com/leshkm/karaf-ignite-test Best regards, Oleksii