You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vo...@apache.org on 2016/06/14 07:17:03 UTC

[3/4] ignite git commit: IGNITE-3294: Fixed problem with similar IDs put into invoke map during transfer operation.

IGNITE-3294: Fixed problem with similar IDs put into invoke map during transfer operation.


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/fbc5d967
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/fbc5d967
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/fbc5d967

Branch: refs/heads/ignite-3294
Commit: fbc5d96700cf5ef2df66ab357cbb2ae5b279d06e
Parents: 14cbd12
Author: vozerov-gridgain <vo...@gridgain.com>
Authored: Tue Jun 14 09:40:56 2016 +0300
Committer: vozerov-gridgain <vo...@gridgain.com>
Committed: Tue Jun 14 09:40:56 2016 +0300

----------------------------------------------------------------------
 .../internal/processors/igfs/IgfsMetaManager.java    | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/fbc5d967/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsMetaManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsMetaManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsMetaManager.java
index 61713c3..a7f8336 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsMetaManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsMetaManager.java
@@ -1740,12 +1740,19 @@ public class IgfsMetaManager extends IgfsManager {
         IgniteUuid destId, String destName) throws IgniteCheckedException {
         validTxState(true);
 
-        Map<IgniteUuid, EntryProcessor<IgniteUuid, IgfsEntryInfo, Void>> procMap = new HashMap<>();
+        if (F.eq(srcId, destId)) {
+            id2InfoPrj.invoke(srcId, new IgfsMetaDirectoryListingRemoveProcessor(srcName, entry.fileId()));
+            id2InfoPrj.invoke(destId, new IgfsMetaDirectoryListingAddProcessor(destName, entry));
+        }
+        else {
 
-        procMap.put(srcId, new IgfsMetaDirectoryListingRemoveProcessor(srcName, entry.fileId()));
-        procMap.put(destId, new IgfsMetaDirectoryListingAddProcessor(destName, entry));
+            Map<IgniteUuid, EntryProcessor<IgniteUuid, IgfsEntryInfo, Void>> procMap = new HashMap<>();
 
-        id2InfoPrj.invokeAll(procMap);
+            procMap.put(srcId, new IgfsMetaDirectoryListingRemoveProcessor(srcName, entry.fileId()));
+            procMap.put(destId, new IgfsMetaDirectoryListingAddProcessor(destName, entry));
+
+            id2InfoPrj.invokeAll(procMap);
+        }
     }
 
     /**