You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by ag...@apache.org on 2015/11/18 11:09:06 UTC
[3/3] ignite git commit: Perf - fixed hanging test.
Perf - fixed hanging test.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/10d71a9e
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/10d71a9e
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/10d71a9e
Branch: refs/heads/ignite-perftest-merge
Commit: 10d71a9ee8ae109e599664ef1d430a4c06a36ef9
Parents: 7b54c3d
Author: Alexey Goncharuk <al...@gmail.com>
Authored: Wed Nov 18 13:08:46 2015 +0300
Committer: Alexey Goncharuk <al...@gmail.com>
Committed: Wed Nov 18 13:08:46 2015 +0300
----------------------------------------------------------------------
...arOptimisticSerializableTxPrepareFuture.java | 4 +-
.../near/GridNearOptimisticTxPrepareFuture.java | 4 +-
...ridNearOptimisticTxPrepareFutureAdapter.java | 1 -
.../cache/distributed/near/GridNearTxLocal.java | 40 ++++++++++----------
4 files changed, 24 insertions(+), 25 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/10d71a9e/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java
index b8a61f6..1569b14 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticSerializableTxPrepareFuture.java
@@ -363,6 +363,8 @@ public class GridNearOptimisticSerializableTxPrepareFuture extends GridNearOptim
return;
}
+ tx.addEntryMapping(mappings.values());
+
cctx.mvcc().recheckPendingLocks();
tx.transactionNodes(txMapping.transactionNodes());
@@ -601,8 +603,6 @@ public class GridNearOptimisticSerializableTxPrepareFuture extends GridNearOptim
}
}
}
-
- tx.addEntryMapping(primary, cacheCtx.isNear(), entry.explicitVersion() != null, entry);
}
/** {@inheritDoc} */
http://git-wip-us.apache.org/repos/asf/ignite/blob/10d71a9e/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java
index fad3d7d..82e3868 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFuture.java
@@ -401,6 +401,8 @@ public class GridNearOptimisticTxPrepareFuture extends GridNearOptimisticTxPrepa
return;
}
+ tx.addEntryMapping(mappings);
+
cctx.mvcc().recheckPendingLocks();
tx.transactionNodes(txMapping.transactionNodes());
@@ -597,8 +599,6 @@ public class GridNearOptimisticTxPrepareFuture extends GridNearOptimisticTxPrepa
}
}
- tx.addEntryMapping(primary, cacheCtx.isNear(), entry.explicitVersion() != null, entry);
-
return cur;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/10d71a9e/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFutureAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFutureAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFutureAdapter.java
index 867767b..6b7244a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFutureAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearOptimisticTxPrepareFutureAdapter.java
@@ -23,7 +23,6 @@ import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
import org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtTopologyFuture;
import org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx;
-import org.apache.ignite.internal.util.GridLongList;
import org.apache.ignite.internal.util.lang.GridPlainRunnable;
import org.apache.ignite.internal.util.typedef.CI1;
import org.jetbrains.annotations.Nullable;
http://git-wip-us.apache.org/repos/asf/ignite/blob/10d71a9e/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
index 52667e7..b92be31 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/near/GridNearTxLocal.java
@@ -511,32 +511,32 @@ public class GridNearTxLocal extends GridDhtTxLocalAdapter {
}
/**
- * Adds mapping to the transaction. Note that transaction must hold a copy of TX mapping because
- * tx mapping will be sent to remote nodes.
- *
- * @param primary Primary node for which the mapping is being added.
- * @param near Near mapping flag.
- * @param explicitLock Explicit lock flag.
- * @param txEntry Transaction entry being added.
+ * @param maps Mappings.
*/
- void addEntryMapping(ClusterNode primary, boolean near, boolean explicitLock, IgniteTxEntry txEntry) {
- UUID nodeId = primary.id();
- GridDistributedTxMapping m = mappings.get(nodeId);
+ void addEntryMapping(@Nullable Collection<GridDistributedTxMapping> maps) {
+ if (!F.isEmpty(maps)) {
+ for (GridDistributedTxMapping map : maps) {
+ ClusterNode n = map.node();
- if (m == null)
- mappings.put(m = new GridDistributedTxMapping(primary));
+ GridDistributedTxMapping m = mappings.get(n.id());
- if (near)
- m.near(true);
+ if (m == null) {
+ mappings.put(m = new GridDistributedTxMapping(n));
- if (explicitLock)
- m.markExplicitLock();
+ m.near(map.near());
- m.add(txEntry);
+ if (map.explicitLock())
+ m.markExplicitLock();
+ }
- if (log.isDebugEnabled())
- log.debug("Added mapping to transaction [locId=" + cctx.localNodeId() + ", primaryId=" + nodeId +
- ", entry=" + txEntry + ']');
+ for (IgniteTxEntry entry : map.entries())
+ m.add(entry);
+ }
+
+ if (log.isDebugEnabled())
+ log.debug("Added mappings to transaction [locId=" + cctx.localNodeId() + ", mappings=" + maps +
+ ", tx=" + this + ']');
+ }
}
/**