This is an automated email from the ASF dual-hosted git repository.

agoncharuk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git


The following commit(s) were added to refs/heads/master by this push:
     new 42b4d28  IGNITE-11023 Optimize discovery data bag processing in 
GridMarshallerMappingProcessor - Fixes #5887.
42b4d28 is described below

commit 42b4d28ccb76d8aa9b123a15c3c9a0fa2fdf5810
Author: Vladislav Pyatkov <vldpyat...@gmail.com>
AuthorDate: Mon Feb 4 14:51:11 2019 +0300

    IGNITE-11023 Optimize discovery data bag processing in 
GridMarshallerMappingProcessor - Fixes #5887.
    
    Signed-off-by: Alexey Goncharuk <alexey.goncha...@gmail.com>
---
 .../main/java/org/apache/ignite/internal/MarshallerContextImpl.java | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java
index 7d5bbda..a9ac22d 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/MarshallerContextImpl.java
@@ -49,6 +49,7 @@ import 
org.apache.ignite.internal.processors.marshaller.MarshallerMappingItem;
 import 
org.apache.ignite.internal.processors.marshaller.MarshallerMappingTransport;
 import org.apache.ignite.internal.util.IgniteUtils;
 import org.apache.ignite.internal.util.future.GridFutureAdapter;
+import org.apache.ignite.internal.util.typedef.F;
 import org.apache.ignite.internal.util.typedef.internal.CU;
 import org.apache.ignite.internal.util.typedef.internal.U;
 import org.apache.ignite.lang.IgnitePredicate;
@@ -196,6 +197,11 @@ public class MarshallerContextImpl implements 
MarshallerContext {
             int typeId = e.getKey();
             String clsName = e.getValue().className();
 
+            MappedName mappedName = platformCache.get(typeId);
+
+            if (mappedName != null && !F.isEmpty(clsName) && 
clsName.equals(mappedName.className()))
+                continue;
+
             platformCache.put(typeId, new MappedName(clsName, true));
 
             fileStore.mergeAndWriteMapping(platformId, typeId, clsName);

Reply via email to