ignite-4929

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

Branch: refs/heads/ignite-4929
Commit: dffea71687ee124e9cbd219df82bc748e9c708d6
Parents: 4e80e0c
Author: sboikov <[email protected]>
Authored: Tue Apr 11 13:37:26 2017 +0300
Committer: sboikov <[email protected]>
Committed: Tue Apr 11 13:37:26 2017 +0300

----------------------------------------------------------------------
 .../distributed/dht/GridDhtTxPrepareFuture.java      | 15 +++++++++++++++
 1 file changed, 15 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/dffea716/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java
index 68e51bb..3029b09 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtTxPrepareFuture.java
@@ -1527,6 +1527,21 @@ public final class GridDhtTxPrepareFuture extends 
GridCompoundFuture<IgniteInter
     ) {
         GridDistributedTxMapping global = globalMap.get(n.id());
 
+        if (!F.isEmpty(entry.entryProcessors())) {
+            GridDhtPartitionState state = 
entry.context().topology().partitionState(n.id(),
+                entry.cached().partition());
+
+            if (state != GridDhtPartitionState.OWNING && state != 
GridDhtPartitionState.EVICTED) {
+                T2<GridCacheOperation, CacheObject> procVal = 
entry.entryProcessorCalculatedValue();
+
+                assert procVal != null : entry;
+
+                entry.op(procVal.get1());
+                entry.value(procVal.get2(), true, false);
+                entry.entryProcessors(null);
+            }
+        }
+
         if (global == null)
             globalMap.put(n.id(), global = new GridDistributedTxMapping(n));
 

Reply via email to