diff --git a/modules/codegen/src/main/java/org/apache/ignite/internal/MessageSerializerGenerator.java b/modules/codegen/src/main/java/org/apache/ignite/internal/MessageSerializerGenerator.java index 893a1ccaa4878..8ba1486590b69 100644 --- a/modules/codegen/src/main/java/org/apache/ignite/internal/MessageSerializerGenerator.java +++ b/modules/codegen/src/main/java/org/apache/ignite/internal/MessageSerializerGenerator.java @@ -957,7 +957,7 @@ private void finish(List code, boolean read, boolean marshallable) { indent++; - code.add(identedLine("throw new IgniteException(\"Failed to unmarshal object\" + msg.getClass().getSimpleName(), e);")); + code.add(identedLine("throw new IgniteException(\"Failed to unmarshal object \" + msg.getClass().getSimpleName(), e);")); indent--; diff --git a/modules/core/src/main/java/org/apache/ignite/internal/CoreMessagesProvider.java b/modules/core/src/main/java/org/apache/ignite/internal/CoreMessagesProvider.java index aa5d1e210cbaa..ddab45f84d3d1 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/CoreMessagesProvider.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/CoreMessagesProvider.java @@ -19,6 +19,7 @@ import org.apache.ignite.configuration.IgniteConfiguration; import org.apache.ignite.internal.binary.BinaryMarshaller; +import org.apache.ignite.internal.cache.query.QueryIndexMessage; import org.apache.ignite.internal.cache.query.index.IndexQueryResultMeta; import org.apache.ignite.internal.cache.query.index.sorted.IndexKeyDefinition; import org.apache.ignite.internal.cache.query.index.sorted.IndexKeyTypeSettings; @@ -232,6 +233,7 @@ import org.apache.ignite.internal.util.distributed.SingleNodeMessage; import org.apache.ignite.lang.IgniteProductVersion; import org.apache.ignite.marshaller.Marshaller; +import org.apache.ignite.marshaller.jdk.JdkMarshaller; import org.apache.ignite.plugin.extensions.communication.Message; import org.apache.ignite.plugin.extensions.communication.MessageFactory; import org.apache.ignite.spi.collision.jobstealing.JobStealingRequest; @@ -296,23 +298,28 @@ public class CoreMessagesProvider extends AbstractMarshallableMessageFactoryProv /** * Default plugin-purposes constructor. * - * @see #init(Marshaller, ClassLoader) + * @see #init(Marshaller, Marshaller, ClassLoader) */ public CoreMessagesProvider() { // No-op. } /** - * Constructor allowing not to call {@link #init(Marshaller, ClassLoader)}. + * Constructor allowing not to call {@link #init(Marshaller, Marshaller, ClassLoader)}. * + * @param dfltMarsh Schema-less marshaller like {@link JdkMarshaller}. * @param schemaAwareMarsh Schema-aware marshaller like {@link BinaryMarshaller}. * @param resolvedClsLdr Resolved (configured) class loader like {@link IgniteConfiguration#setClassLoader(ClassLoader)}. */ - public CoreMessagesProvider(Marshaller schemaAwareMarsh, ClassLoader resolvedClsLdr) { - init(schemaAwareMarsh, resolvedClsLdr); + public CoreMessagesProvider(Marshaller dfltMarsh, Marshaller schemaAwareMarsh, ClassLoader resolvedClsLdr) { + init(dfltMarsh, schemaAwareMarsh, resolvedClsLdr); } - /** The order is important. If wish to remove a message, put 'msgIdx++' on its place. */ + /** + * Registers all the messages into {@code factory}. + * The listing order is important here. If wish to remove a message, put 'msgIdx++' on its place. If wish to add, + * put it to end of a group. + */ @Override public void registerAll(MessageFactory factory) { assert this.factory == null; @@ -532,6 +539,7 @@ public CoreMessagesProvider(Marshaller schemaAwareMarsh, ClassLoader resolvedCls withNoSchema(SchemaProposeDiscoveryMessage.class); withNoSchema(SchemaFinishDiscoveryMessage.class); withNoSchema(QueryField.class); + withNoSchema(QueryIndexMessage.class); withNoSchema(GridCacheSqlQuery.class); withSchema(GridCacheQueryRequest.class); withSchema(GridCacheQueryResponse.class); @@ -649,7 +657,7 @@ private void withSchema(Class cls) { register(cls, schemaAwareMarsh, dftlClsLdr); } - /** Registers message using {@link #schemaAwareMarsh} and {@link #resolvedClsLdr}. */ + /** Registers message using {@link #dfltMarsh} and {@link #resolvedClsLdr}. */ private void withNoSchemaResolvedClassLoader(Class cls) { register(cls, dfltMarsh, resolvedClsLdr); } diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java index a27c0623edafc..1bc4d197088b9 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java @@ -1320,14 +1320,18 @@ private void initMessageFactory() throws IgniteCheckedException { List compMsgs = new ArrayList<>(); - compMsgs.add(new CoreMessagesProvider(ctx.marshaller(), U.resolveClassLoader(ctx.config()))); + ClassLoader resolvedClsLdr = U.resolveClassLoader(ctx.config()); + + compMsgs.add(new CoreMessagesProvider(ctx.marshallerContext().jdkMarshaller(), ctx.marshaller(), resolvedClsLdr)); for (IgniteComponentType compType : IgniteComponentType.values()) { MessageFactoryProvider f = compType.messageFactory(); if (f != null) { - if (f instanceof AbstractMarshallableMessageFactoryProvider) - ((AbstractMarshallableMessageFactoryProvider)f).init(ctx.marshaller(), U.resolveClassLoader(ctx.config())); + if (f instanceof AbstractMarshallableMessageFactoryProvider) { + ((AbstractMarshallableMessageFactoryProvider)f).init(ctx.marshallerContext().jdkMarshaller(), + ctx.marshaller(), resolvedClsLdr); + } compMsgs.add(f); } diff --git a/modules/core/src/main/java/org/apache/ignite/internal/cache/query/QueryIndexMessage.java b/modules/core/src/main/java/org/apache/ignite/internal/cache/query/QueryIndexMessage.java new file mode 100644 index 0000000000000..c42415be029b4 --- /dev/null +++ b/modules/core/src/main/java/org/apache/ignite/internal/cache/query/QueryIndexMessage.java @@ -0,0 +1,81 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.ignite.internal.cache.query; + +import java.io.Serializable; +import java.util.LinkedHashMap; +import org.apache.ignite.cache.QueryIndex; +import org.apache.ignite.cache.QueryIndexType; +import org.apache.ignite.internal.Order; +import org.apache.ignite.internal.util.tostring.GridToStringInclude; +import org.apache.ignite.internal.util.typedef.internal.S; +import org.apache.ignite.plugin.extensions.communication.Message; +import org.apache.ignite.plugin.extensions.communication.MessageFactory; + +/** Message for {@link QueryIndex}. */ +public class QueryIndexMessage implements Serializable, Message { + /** */ + private static final long serialVersionUID = 0L; + + /** Index name. */ + @Order(0) + public String name; + + /** */ + @GridToStringInclude + @Order(1) + public LinkedHashMap fields; + + /** */ + @Order(2) + QueryIndexType type; + + /** */ + @Order(3) + int inlineSize; + + /** Empty constructor for {@link MessageFactory}. */ + public QueryIndexMessage() { + // No-op. + } + + /** Copies {@code idx}. */ + public QueryIndexMessage(QueryIndex idx) { + name = idx.getName(); + fields = idx.getFields(); + type = idx.getIndexType(); + inlineSize = idx.getInlineSize(); + } + + /** @return Copy of {@code msg} as {@link QueryIndex}. */ + public static QueryIndex queryIndex(QueryIndexMessage msg) { + QueryIndex res = new QueryIndex(); + + res.setName(msg.name); + res.setFields(msg.fields); + res.setIndexType(msg.type); + res.setInlineSize(msg.inlineSize); + + return res; + } + + /** {@inheritDoc} */ + @Override public String toString() { + return S.toString(QueryIndexMessage.class, this); + } +} diff --git a/modules/core/src/main/java/org/apache/ignite/internal/plugin/AbstractMarshallableMessageFactoryProvider.java b/modules/core/src/main/java/org/apache/ignite/internal/plugin/AbstractMarshallableMessageFactoryProvider.java index 03a65b95b6e0c..5ac1f2472997f 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/plugin/AbstractMarshallableMessageFactoryProvider.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/plugin/AbstractMarshallableMessageFactoryProvider.java @@ -24,7 +24,7 @@ import org.apache.ignite.internal.binary.BinaryMarshaller; import org.apache.ignite.internal.util.typedef.internal.U; import org.apache.ignite.marshaller.Marshaller; -import org.apache.ignite.marshaller.Marshallers; +import org.apache.ignite.marshaller.jdk.JdkMarshaller; import org.apache.ignite.plugin.extensions.communication.Message; import org.apache.ignite.plugin.extensions.communication.MessageFactory; import org.apache.ignite.plugin.extensions.communication.MessageFactoryProvider; @@ -36,7 +36,7 @@ */ public abstract class AbstractMarshallableMessageFactoryProvider implements MessageFactoryProvider { /** Default schema-less marshaller. */ - protected final Marshaller dfltMarsh = Marshallers.jdk(); + protected Marshaller dfltMarsh; /** Default class loader. */ protected final ClassLoader dftlClsLdr = U.gridClassLoader(); @@ -48,10 +48,12 @@ public abstract class AbstractMarshallableMessageFactoryProvider implements Mess protected ClassLoader resolvedClsLdr; /** + * @param dfltMarsh Default schema-less marshaller like {@link JdkMarshaller}. * @param schemaAwareMarsh Schema-aware marshaller like {@link BinaryMarshaller}. * @param resolvedClsLdr Resolved (configured) class loader like {@link IgniteConfiguration#setClassLoader(ClassLoader)}. */ - public void init(Marshaller schemaAwareMarsh, ClassLoader resolvedClsLdr) { + public void init(Marshaller dfltMarsh, Marshaller schemaAwareMarsh, ClassLoader resolvedClsLdr) { + this.dfltMarsh = dfltMarsh; this.schemaAwareMarsh = schemaAwareMarsh; this.resolvedClsLdr = resolvedClsLdr; } diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java index 8d0ffbb168f16..5c639d08b2596 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java @@ -917,7 +917,7 @@ private void processFailedMessage(UUID nodeId, break; - case 10910: { + case 10911: { GridCacheQueryRequest req = (GridCacheQueryRequest)msg; GridCacheQueryResponse res = new GridCacheQueryResponse( diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/QueryUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/QueryUtils.java index a815c4ce45063..e2f829b5187fc 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/QueryUtils.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/QueryUtils.java @@ -227,12 +227,22 @@ public static String indexName(QueryEntity entity, QueryIndex idx) { * @return Index name. */ public static String indexName(String tblName, QueryIndex idx) { - String res = idx.getName(); + return indexName(tblName, idx.getName(), idx.getFields()); + } - if (res == null) { + /** + * Get index name. + * + * @param tblName Table name. + * @param name Index name. + * @param fields Fields. + * @return Index name. + */ + public static String indexName(String tblName, @Nullable String name, Map fields) { + if (name == null) { StringBuilder idxName = new StringBuilder(tblName + "_"); - for (Map.Entry field : idx.getFields().entrySet()) { + for (Map.Entry field : fields.entrySet()) { idxName.append(field.getKey()); idxName.append('_'); @@ -253,7 +263,7 @@ public static String indexName(String tblName, QueryIndex idx) { return idxName.toString(); } - return res; + return name; } /** diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/schema/operation/SchemaIndexCreateOperation.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/schema/operation/SchemaIndexCreateOperation.java index bf044295e6115..056ccaae028ea 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/query/schema/operation/SchemaIndexCreateOperation.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/query/schema/operation/SchemaIndexCreateOperation.java @@ -18,20 +18,17 @@ package org.apache.ignite.internal.processors.query.schema.operation; import java.util.UUID; -import org.apache.ignite.IgniteCheckedException; import org.apache.ignite.cache.QueryIndex; -import org.apache.ignite.internal.MarshallableMessage; import org.apache.ignite.internal.Order; +import org.apache.ignite.internal.cache.query.QueryIndexMessage; import org.apache.ignite.internal.processors.query.QueryUtils; import org.apache.ignite.internal.util.tostring.GridToStringInclude; import org.apache.ignite.internal.util.typedef.internal.S; -import org.apache.ignite.internal.util.typedef.internal.U; -import org.apache.ignite.marshaller.Marshaller; /** * Schema index create operation. */ -public class SchemaIndexCreateOperation extends SchemaIndexAbstractOperation implements MarshallableMessage { +public class SchemaIndexCreateOperation extends SchemaIndexAbstractOperation { /** */ private static final long serialVersionUID = 0L; @@ -41,11 +38,8 @@ public class SchemaIndexCreateOperation extends SchemaIndexAbstractOperation imp /** Index. */ @GridToStringInclude - private QueryIndex idx; - - /** Serialized form of 'query index'. */ @Order(1) - transient byte[] qryIdxBytes; + QueryIndexMessage idxMsg; /** Ignore operation if index exists. */ @Order(2) @@ -56,7 +50,9 @@ public class SchemaIndexCreateOperation extends SchemaIndexAbstractOperation imp int parallel; /** */ - public SchemaIndexCreateOperation() {} + public SchemaIndexCreateOperation() { + // No-op. + } /** * Constructor. @@ -74,14 +70,14 @@ public SchemaIndexCreateOperation(UUID opId, String cacheName, String schemaName super(opId, cacheName, schemaName); this.tblName = tblName; - this.idx = idx; + this.idxMsg = new QueryIndexMessage(idx); this.ifNotExists = ifNotExists; this.parallel = parallel; } /** {@inheritDoc} */ @Override public String indexName() { - return QueryUtils.indexName(tblName, idx); + return QueryUtils.indexName(tblName, idxMsg.name, idxMsg.fields); } /** @@ -95,7 +91,7 @@ public String tableName() { * @return Index params. */ public QueryIndex index() { - return idx; + return QueryIndexMessage.queryIndex(idxMsg); } /** @@ -114,21 +110,6 @@ public int parallel() { return parallel; } - /** {@inheritDoc} */ - @Override public void prepareMarshal(Marshaller marsh) throws IgniteCheckedException { - if (idx != null) - qryIdxBytes = U.marshal(marsh, idx); - } - - /** {@inheritDoc} */ - @Override public void finishUnmarshal(Marshaller marsh, ClassLoader clsLdr) throws IgniteCheckedException { - if (qryIdxBytes != null) { - idx = U.unmarshal(marsh, qryIdxBytes, clsLdr); - - qryIdxBytes = null; - } - } - /** {@inheritDoc} */ @Override public String toString() { return S.toString(SchemaIndexCreateOperation.class, this, "parent", super.toString()); diff --git a/modules/core/src/test/java/org/apache/ignite/internal/codegen/MessageProcessorTest.java b/modules/core/src/test/java/org/apache/ignite/internal/codegen/MessageProcessorTest.java index ee30d719dccc3..e1e2e38dbbf5c 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/codegen/MessageProcessorTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/codegen/MessageProcessorTest.java @@ -18,16 +18,23 @@ package org.apache.ignite.internal.codegen; import java.io.File; +import java.lang.reflect.Field; +import java.lang.reflect.Modifier; import java.net.URI; import java.util.ArrayList; +import java.util.LinkedHashMap; import java.util.List; +import java.util.Map; import javax.annotation.processing.Processor; import javax.tools.JavaFileObject; import com.google.testing.compile.Compilation; import com.google.testing.compile.Compiler; import com.google.testing.compile.JavaFileObjects; +import org.apache.ignite.cache.QueryIndex; +import org.apache.ignite.cache.QueryIndexType; import org.apache.ignite.internal.MessageProcessor; import org.apache.ignite.internal.Order; +import org.apache.ignite.internal.cache.query.QueryIndexMessage; import org.apache.ignite.internal.util.CommonUtils; import org.apache.ignite.internal.util.typedef.F; import org.apache.ignite.lang.IgniteUuid; @@ -165,6 +172,34 @@ public void testPojoFieldFailed() { assertThat(compilation).failed(); } + /** Tests {@link QueryIndexMessage} that copies {@link QueryIndex}. */ + @Test + public void testQueryIndex() { + Field[] fields0 = QueryIndex.class.getDeclaredFields(); + + Map fields = CommonUtils.newHashMap(fields0.length); + + for (Field f : fields0) { + if (!Modifier.isStatic(f.getModifiers())) + fields.put(f.getName(), f); + } + + assertEquals(4, fields.size()); + + assertEquals(String.class, fields.get("name").getType()); + assertEquals(LinkedHashMap.class, fields.get("fields").getType()); + assertEquals(QueryIndexType.class, fields.get("type").getType()); + assertEquals(int.class, fields.get("inlineSize").getType()); + + QueryIndex idx = new QueryIndex("fld0", QueryIndexType.GEOSPATIAL, false, "testIdx"); + + QueryIndexMessage msg = new QueryIndexMessage(idx); + + QueryIndex idx1 = QueryIndexMessage.queryIndex(msg); + + assertEquals(idx, idx1); + } + /** */ @Test public void testExceptionFailed() { diff --git a/modules/core/src/test/java/org/apache/ignite/internal/direct/DirectMarshallingMessagesTest.java b/modules/core/src/test/java/org/apache/ignite/internal/direct/DirectMarshallingMessagesTest.java index a4c9164388911..ea37b6abe4545 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/direct/DirectMarshallingMessagesTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/direct/DirectMarshallingMessagesTest.java @@ -46,7 +46,7 @@ public class DirectMarshallingMessagesTest extends GridCommonAbstractTest { /** Message factory. */ private final MessageFactory msgFactory = new IgniteMessageFactoryImpl(new MessageFactoryProvider[] { - new CoreMessagesProvider(jdk(), U.gridClassLoader()), + new CoreMessagesProvider(jdk(), jdk(), U.gridClassLoader()), factory -> factory.register( TestNestedContainersMessage.TYPE, TestNestedContainersMessage::new, diff --git a/modules/core/src/test/java/org/apache/ignite/internal/managers/IgniteCoreMessagesSerializationTest.java b/modules/core/src/test/java/org/apache/ignite/internal/managers/IgniteCoreMessagesSerializationTest.java index 74f1c90b9980f..21f22330814af 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/managers/IgniteCoreMessagesSerializationTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/managers/IgniteCoreMessagesSerializationTest.java @@ -34,7 +34,7 @@ public class IgniteCoreMessagesSerializationTest extends AbstractMessageSerializationTest { /** {@inheritDoc} */ @Override protected MessageFactoryProvider messageFactory() { - return new CoreMessagesProvider(jdk(), U.gridClassLoader()); + return new CoreMessagesProvider(jdk(), jdk(), U.gridClassLoader()); } /** {@inheritDoc} */ diff --git a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/CompressedMessageTest.java b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/CompressedMessageTest.java index f124eb9822825..53fa342460b41 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/CompressedMessageTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/CompressedMessageTest.java @@ -46,7 +46,7 @@ public class CompressedMessageTest { @Test public void testWriteReadHugeMessage() { MessageFactory msgFactory = new IgniteMessageFactoryImpl(new MessageFactoryProvider[]{ - new CoreMessagesProvider(jdk(), U.gridClassLoader())}); + new CoreMessagesProvider(jdk(), jdk(), U.gridClassLoader())}); DirectMessageWriter writer = new DirectMessageWriter(msgFactory); diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/IgniteCacheContinuousQueryImmutableEntryTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/IgniteCacheContinuousQueryImmutableEntryTest.java index 15ddd54040c5a..a41490c0e405f 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/IgniteCacheContinuousQueryImmutableEntryTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/query/continuous/IgniteCacheContinuousQueryImmutableEntryTest.java @@ -150,7 +150,7 @@ public void testCacheContinuousQueryEntrySerialization() { e0.markFiltered(); IgniteMessageFactoryImpl msgFactory = - new IgniteMessageFactoryImpl(new MessageFactoryProvider[]{new CoreMessagesProvider(jdk(), U.gridClassLoader())}); + new IgniteMessageFactoryImpl(new MessageFactoryProvider[]{new CoreMessagesProvider(jdk(), jdk(), U.gridClassLoader())}); ByteBuffer buf = ByteBuffer.allocate(4096); DirectMessageWriter writer = new DirectMessageWriter(msgFactory); diff --git a/modules/core/src/test/java/org/apache/ignite/spi/communication/GridAbstractCommunicationSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/communication/GridAbstractCommunicationSelfTest.java index f82c844bda973..1ca7217b67dca 100644 --- a/modules/core/src/test/java/org/apache/ignite/spi/communication/GridAbstractCommunicationSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/spi/communication/GridAbstractCommunicationSelfTest.java @@ -154,7 +154,7 @@ private void startSpis() throws Exception { GridSpiTestContext ctx = initSpiContext(); ctx.messageFactory(new IgniteMessageFactoryImpl(new MessageFactoryProvider[] { - new CoreMessagesProvider(jdk(), U.gridClassLoader()), customMessageFactory()})); + new CoreMessagesProvider(jdk(), jdk(), U.gridClassLoader()), customMessageFactory()})); ctx.setLocalNode(node); diff --git a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiConcurrentConnectSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiConcurrentConnectSelfTest.java index 1bc2358cc7e2f..997d5b59fd4e6 100644 --- a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiConcurrentConnectSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiConcurrentConnectSelfTest.java @@ -434,7 +434,7 @@ private void startSpis(MessageListener lsnr) throws Exception { GridSpiTestContext ctx = initSpiContext(); ctx.messageFactory(new IgniteMessageFactoryImpl( - new MessageFactoryProvider[] {new CoreMessagesProvider(jdk(), U.gridClassLoader()), GRID_TEST_MESSAGE_FACTORY}) + new MessageFactoryProvider[] {new CoreMessagesProvider(jdk(), jdk(), U.gridClassLoader()), GRID_TEST_MESSAGE_FACTORY}) ); ctx.setLocalNode(node); diff --git a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiConfigSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiConfigSelfTest.java index a604da0edb7f0..3f2d90924bf28 100644 --- a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiConfigSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiConfigSelfTest.java @@ -252,7 +252,7 @@ private TcpCommunicationSpi initializeSpi(GridSpiTestContext ctx, node.setId(rsrcs.getNodeId()); ctx.messageFactory(new IgniteMessageFactoryImpl(new MessageFactoryProvider[]{ - new CoreMessagesProvider(jdk(), U.gridClassLoader()), GRID_TEST_MESSAGE_FACTORY})); + new CoreMessagesProvider(jdk(), jdk(), U.gridClassLoader()), GRID_TEST_MESSAGE_FACTORY})); ctx.setLocalNode(node); diff --git a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiMultithreadedSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiMultithreadedSelfTest.java index 6a5d26eb26619..c043c068fc434 100644 --- a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiMultithreadedSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiMultithreadedSelfTest.java @@ -468,7 +468,7 @@ private int getSpiCount() { GridSpiTestContext ctx = initSpiContext(); ctx.messageFactory(new IgniteMessageFactoryImpl( - new MessageFactoryProvider[] {new CoreMessagesProvider(jdk(), U.gridClassLoader()), GRID_TEST_MESSAGE_FACTORY}) + new MessageFactoryProvider[] {new CoreMessagesProvider(jdk(), jdk(), U.gridClassLoader()), GRID_TEST_MESSAGE_FACTORY}) ); ctx.timeoutProcessor(timeoutProcessor); diff --git a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryAckSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryAckSelfTest.java index de46f4b674a88..56c6daceca5d2 100644 --- a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryAckSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoveryAckSelfTest.java @@ -400,7 +400,7 @@ private void startSpis(int ackCnt, int idleTimeout, int queueLimit) throws Excep GridSpiTestContext ctx = initSpiContext(); ctx.messageFactory(new IgniteMessageFactoryImpl( - new MessageFactoryProvider[] {new CoreMessagesProvider(jdk(), U.gridClassLoader()), GRID_TEST_MESSAGE_FACTORY}) + new MessageFactoryProvider[] {new CoreMessagesProvider(jdk(), jdk(), U.gridClassLoader()), GRID_TEST_MESSAGE_FACTORY}) ); ctx.setLocalNode(node); diff --git a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoverySelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoverySelfTest.java index 633bd332eaf28..d4f00e425a428 100644 --- a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoverySelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/GridTcpCommunicationSpiRecoverySelfTest.java @@ -729,7 +729,7 @@ private void startSpis() throws Exception { GridSpiTestContext ctx = initSpiContext(); ctx.messageFactory(new IgniteMessageFactoryImpl( - new MessageFactoryProvider[] {new CoreMessagesProvider(jdk(), U.gridClassLoader()), GRID_TEST_MESSAGE_FACTORY}) + new MessageFactoryProvider[] {new CoreMessagesProvider(jdk(), jdk(), U.gridClassLoader()), GRID_TEST_MESSAGE_FACTORY}) ); ctx.setLocalNode(node); diff --git a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/IgniteTcpCommunicationRecoveryAckClosureSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/IgniteTcpCommunicationRecoveryAckClosureSelfTest.java index 06d657a8a3bea..58a321e21c8a9 100644 --- a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/IgniteTcpCommunicationRecoveryAckClosureSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/IgniteTcpCommunicationRecoveryAckClosureSelfTest.java @@ -453,7 +453,7 @@ private void startSpis(int ackCnt, int idleTimeout, int queueLimit) throws Excep GridSpiTestContext ctx = initSpiContext(); ctx.messageFactory(new IgniteMessageFactoryImpl( - new MessageFactoryProvider[] {new CoreMessagesProvider(jdk(), U.gridClassLoader()), GRID_TEST_MESSAGE_FACTORY}) + new MessageFactoryProvider[] {new CoreMessagesProvider(jdk(), jdk(), U.gridClassLoader()), GRID_TEST_MESSAGE_FACTORY}) ); ctx.setLocalNode(node); diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TestTcpDiscoverySpi.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TestTcpDiscoverySpi.java index decf2bf4b5c3e..2aaabee1aeb71 100644 --- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TestTcpDiscoverySpi.java +++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TestTcpDiscoverySpi.java @@ -121,7 +121,7 @@ public void messageFactory(MessageFactoryProvider msgFactoryProvider) { assert !started(); this.msgFactory = new IgniteMessageFactoryImpl(new MessageFactoryProvider[] { - new CoreMessagesProvider(jdk(), U.resolveClassLoader(ignite().configuration())), + new CoreMessagesProvider(jdk(), jdk(), U.resolveClassLoader(ignite().configuration())), msgFactoryProvider }); } diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/GridSpiTestContext.java b/modules/core/src/test/java/org/apache/ignite/testframework/GridSpiTestContext.java index b5c5035b7d030..8d55fa55bc669 100644 --- a/modules/core/src/test/java/org/apache/ignite/testframework/GridSpiTestContext.java +++ b/modules/core/src/test/java/org/apache/ignite/testframework/GridSpiTestContext.java @@ -554,7 +554,7 @@ public void triggerEvent(Event evt) { /** {@inheritDoc} */ @Override public MessageFactory messageFactory() { if (factory == null) - factory = new IgniteMessageFactoryImpl(new MessageFactoryProvider[]{new CoreMessagesProvider(jdk(), + factory = new IgniteMessageFactoryImpl(new MessageFactoryProvider[]{new CoreMessagesProvider(jdk(), jdk(), U.gridClassLoader())}); return factory; diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/junits/IgniteMock.java b/modules/core/src/test/java/org/apache/ignite/testframework/junits/IgniteMock.java index e6638d4e1120d..152b209a533a7 100644 --- a/modules/core/src/test/java/org/apache/ignite/testframework/junits/IgniteMock.java +++ b/modules/core/src/test/java/org/apache/ignite/testframework/junits/IgniteMock.java @@ -155,7 +155,7 @@ public IgniteMock(String name, String locHost, UUID nodeId, Marshaller marshalle ClassLoader lrd = staticCfg == null ? U.gridClassLoader() : U.resolveClassLoader(staticCfg); msgFactory = new IgniteMessageFactoryImpl(new MessageFactoryProvider[] { - new CoreMessagesProvider(marshaller, lrd)}); + new CoreMessagesProvider(marshaller, marshaller, lrd)}); try { kernalCtx = new StandaloneGridKernalContext(new GridTestLog4jLogger(), null) {