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/02/04 09:00:08 UTC
[1/8] ignite git commit: IGNITE-2465 - Fixed race in load cache
closure - Fixes #431.
Repository: ignite
Updated Branches:
refs/heads/ignite-2523 3967130f5 -> 7e09a146a
IGNITE-2465 - Fixed race in load cache closure - Fixes #431.
Signed-off-by: Alexey Goncharuk <al...@gmail.com>
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/500bd3ab
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/500bd3ab
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/500bd3ab
Branch: refs/heads/ignite-2523
Commit: 500bd3ab576830f8160eb66274590b7684a39599
Parents: e7de923
Author: ashutak <as...@gridgain.com>
Authored: Wed Feb 3 14:56:42 2016 +0300
Committer: Alexey Goncharuk <al...@gmail.com>
Committed: Wed Feb 3 14:56:42 2016 +0300
----------------------------------------------------------------------
.../processors/cache/GridCacheAdapter.java | 100 ++++++++++++++++++-
1 file changed, 96 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/500bd3ab/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
index 69abc54..2c3a197 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheAdapter.java
@@ -70,6 +70,7 @@ import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.configuration.FileSystemConfiguration;
import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.configuration.TransactionConfiguration;
+import org.apache.ignite.internal.ComputeTaskInternalFuture;
import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.IgniteInterruptedCheckedException;
import org.apache.ignite.internal.IgniteKernal;
@@ -101,6 +102,7 @@ import org.apache.ignite.internal.transactions.IgniteTxHeuristicCheckedException
import org.apache.ignite.internal.transactions.IgniteTxRollbackCheckedException;
import org.apache.ignite.internal.util.F0;
import org.apache.ignite.internal.util.GridLeanMap;
+import org.apache.ignite.internal.util.future.GridCompoundFuture;
import org.apache.ignite.internal.util.future.GridEmbeddedFuture;
import org.apache.ignite.internal.util.future.GridFinishedFuture;
import org.apache.ignite.internal.util.future.GridFutureAdapter;
@@ -128,6 +130,7 @@ import org.apache.ignite.lang.IgniteCallable;
import org.apache.ignite.lang.IgniteClosure;
import org.apache.ignite.lang.IgniteInClosure;
import org.apache.ignite.lang.IgniteOutClosure;
+import org.apache.ignite.lang.IgnitePredicate;
import org.apache.ignite.lang.IgniteProductVersion;
import org.apache.ignite.lang.IgniteUuid;
import org.apache.ignite.mxbean.CacheMetricsMXBean;
@@ -166,6 +169,9 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
/** Maximum number of retries when topology changes. */
public static final int MAX_RETRIES = IgniteSystemProperties.getInteger(IGNITE_CACHE_RETRIES_COUNT, 100);
+ /** */
+ public static final IgniteProductVersion LOAD_CACHE_JOB_SINCE = IgniteProductVersion.fromString("1.5.7");
+
/** Deserialization stash. */
private static final ThreadLocal<IgniteBiTuple<String, String>> stash = new ThreadLocal<IgniteBiTuple<String,
String>>() {
@@ -3737,7 +3743,19 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
*/
IgniteInternalFuture<?> globalLoadCacheAsync(@Nullable IgniteBiPredicate<K, V> p, @Nullable Object... args)
throws IgniteCheckedException {
- ClusterGroup nodes = ctx.kernalContext().grid().cluster().forCacheNodes(ctx.name());
+ ClusterGroup oldNodes = ctx.kernalContext().grid().cluster().forCacheNodes(ctx.name())
+ .forPredicate(new IgnitePredicate<ClusterNode>() {
+ @Override public boolean apply(ClusterNode node) {
+ return node.version().compareToIgnoreTimestamp(LOAD_CACHE_JOB_SINCE) < 0;
+ }
+ });
+
+ ClusterGroup newNodes = ctx.kernalContext().grid().cluster().forCacheNodes(ctx.name())
+ .forPredicate(new IgnitePredicate<ClusterNode>() {
+ @Override public boolean apply(ClusterNode node) {
+ return node.version().compareToIgnoreTimestamp(LOAD_CACHE_JOB_SINCE) >= 0;
+ }
+ });
ctx.kernalContext().task().setThreadContext(TC_NO_FAILOVER, true);
@@ -3745,9 +3763,27 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
ExpiryPolicy plc = opCtx != null ? opCtx.expiry() : null;
- return ctx.kernalContext().closure().callAsync(BROADCAST,
- Arrays.asList(new LoadCacheClosure<>(ctx.name(), p, args, plc)),
- nodes.nodes());
+ GridCompoundFuture<Object, ?> fut = new GridCompoundFuture<>();
+
+ if (!F.isEmpty(oldNodes.nodes())) {
+ ComputeTaskInternalFuture oldNodesFut = ctx.kernalContext().closure().callAsync(BROADCAST,
+ Arrays.asList(new LoadCacheClosure<>(ctx.name(), p, args, plc)),
+ oldNodes.nodes());
+
+ fut.add(oldNodesFut);
+ }
+
+ if (!F.isEmpty(newNodes.nodes())) {
+ ComputeTaskInternalFuture newNodesFut = ctx.kernalContext().closure().callAsync(BROADCAST,
+ Arrays.asList(new LoadCacheJob<>(ctx.name(), ctx.affinity().affinityTopologyVersion(), p, args, plc)),
+ newNodes.nodes());
+
+ fut.add(newNodesFut);
+ }
+
+ fut.markInitialized();
+
+ return fut;
}
/**
@@ -5498,6 +5534,62 @@ public abstract class GridCacheAdapter<K, V> implements IgniteInternalCache<K, V
}
/**
+ * Internal callable for global size calculation.
+ */
+ @GridInternal
+ private static class LoadCacheJob<K, V> extends TopologyVersionAwareJob {
+ /** */
+ private static final long serialVersionUID = 0L;
+
+ /** */
+ private final IgniteBiPredicate<K, V> p;
+
+ /** */
+ private final Object[] args;
+
+ /** */
+ private final ExpiryPolicy plc;
+
+ /**
+ * @param cacheName Cache name.
+ * @param topVer Affinity topology version.
+ * @param p Predicate.
+ * @param args Arguments.
+ * @param plc Policy.
+ */
+ private LoadCacheJob(String cacheName, AffinityTopologyVersion topVer, IgniteBiPredicate<K, V> p, Object[] args,
+ ExpiryPolicy plc) {
+ super(cacheName, topVer);
+
+ this.p = p;
+ this.args = args;
+ this.plc = plc;
+ }
+
+ /** {@inheritDoc} */
+ @Nullable @Override public Object localExecute(@Nullable IgniteInternalCache cache) {
+ try {
+ assert cache != null : "Failed to get a cache [cacheName=" + cacheName + ", topVer=" + topVer + "]";
+
+ if (plc != null)
+ cache = cache.withExpiryPolicy(plc);
+
+ cache.localLoadCache(p, args);
+
+ return null;
+ }
+ catch (IgniteCheckedException e) {
+ throw U.convertException(e);
+ }
+ }
+
+ /** {@inheritDoc} */
+ public String toString() {
+ return S.toString(LoadCacheJob.class, this);
+ }
+ }
+
+ /**
* Holder for last async operation future.
*/
protected static class FutureHolder {
[6/8] ignite git commit: IGNITE-2523: Fixed message count tests.
Posted by vo...@apache.org.
IGNITE-2523: Fixed message count tests.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/d3e1645a
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/d3e1645a
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/d3e1645a
Branch: refs/heads/ignite-2523
Commit: d3e1645aaeb8fd9393744cb087a9ddde27f2e95b
Parents: 3d34e50
Author: vozerov-gridgain <vo...@gridgain.com>
Authored: Thu Feb 4 10:52:48 2016 +0300
Committer: vozerov-gridgain <vo...@gridgain.com>
Committed: Thu Feb 4 10:52:48 2016 +0300
----------------------------------------------------------------------
.../GridCacheAtomicMessageCountSelfTest.java | 40 ++++++++++++++------
1 file changed, 28 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/d3e1645a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicMessageCountSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicMessageCountSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicMessageCountSelfTest.java
index 0e17102..cda86ba 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicMessageCountSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicMessageCountSelfTest.java
@@ -28,6 +28,7 @@ import org.apache.ignite.configuration.CacheConfiguration;
import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.internal.managers.communication.GridIoMessage;
import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicUpdateRequest;
+import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicSingleUpdateRequest;
import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicUpdateRequest;
import org.apache.ignite.lang.IgniteInClosure;
import org.apache.ignite.plugin.extensions.communication.Message;
@@ -138,6 +139,7 @@ public class GridCacheAtomicMessageCountSelfTest extends GridCommonAbstractTest
TestCommunicationSpi commSpi = (TestCommunicationSpi)grid(0).configuration().getCommunicationSpi();
commSpi.registerMessage(GridNearAtomicUpdateRequest.class);
+ commSpi.registerMessage(GridNearAtomicSingleUpdateRequest.class);
commSpi.registerMessage(GridDhtAtomicUpdateRequest.class);
int putCnt = 15;
@@ -166,22 +168,22 @@ public class GridCacheAtomicMessageCountSelfTest extends GridCommonAbstractTest
jcache(0).put(i, i);
}
- assertEquals(expNearCnt, commSpi.messageCount(GridNearAtomicUpdateRequest.class));
- assertEquals(expDhtCnt, commSpi.messageCount(GridDhtAtomicUpdateRequest.class));
+ assertEquals(expNearCnt, nearRequestsCount(commSpi));
+ assertEquals(expDhtCnt, dhtRequestsCount(commSpi));
if (writeOrderMode == CLOCK) {
for (int i = 1; i < 4; i++) {
commSpi = (TestCommunicationSpi)grid(i).configuration().getCommunicationSpi();
- assertEquals(0, commSpi.messageCount(GridNearAtomicUpdateRequest.class));
- assertEquals(0, commSpi.messageCount(GridDhtAtomicUpdateRequest.class));
+ assertEquals(0, nearRequestsCount(commSpi));
+ assertEquals(0, dhtRequestsCount(commSpi));
}
}
else {
for (int i = 1; i < 4; i++) {
commSpi = (TestCommunicationSpi)grid(i).configuration().getCommunicationSpi();
- assertEquals(0, commSpi.messageCount(GridNearAtomicUpdateRequest.class));
+ assertEquals(0, nearRequestsCount(commSpi));
}
}
}
@@ -191,6 +193,27 @@ public class GridCacheAtomicMessageCountSelfTest extends GridCommonAbstractTest
}
/**
+ * Get amount of near update requests.
+ *
+ * @param commSpi Communication SPI.
+ * @return Count.
+ */
+ private int nearRequestsCount(TestCommunicationSpi commSpi) {
+ return commSpi.messageCount(GridNearAtomicUpdateRequest.class) +
+ commSpi.messageCount(GridNearAtomicSingleUpdateRequest.class);
+ }
+
+ /**
+ * Get amount of DHT update requests.
+ *
+ * @param commSpi Communication SPI.
+ * @return Count.
+ */
+ private int dhtRequestsCount(TestCommunicationSpi commSpi) {
+ return commSpi.messageCount(GridDhtAtomicUpdateRequest.class);
+ }
+
+ /**
* Test communication SPI.
*/
private static class TestCommunicationSpi extends TcpCommunicationSpi {
@@ -229,12 +252,5 @@ public class GridCacheAtomicMessageCountSelfTest extends GridCommonAbstractTest
return cntr == null ? 0 : cntr.get();
}
-
- /**
- * Resets counter to zero.
- */
- public void resetCount() {
- cntMap.clear();
- }
}
}
\ No newline at end of file
[2/8] ignite git commit: Improved exception handling in IgniteContext
Posted by vo...@apache.org.
Improved exception handling in IgniteContext
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/d1e2957a
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/d1e2957a
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/d1e2957a
Branch: refs/heads/ignite-2523
Commit: d1e2957a7440b7a781439811ab9bdfedf38bd640
Parents: 500bd3a
Author: Valentin Kulichenko <va...@gmail.com>
Authored: Wed Feb 3 18:44:44 2016 -0800
Committer: Valentin Kulichenko <va...@gmail.com>
Committed: Wed Feb 3 18:44:44 2016 -0800
----------------------------------------------------------------------
.../scala/org/apache/ignite/spark/IgniteContext.scala | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/d1e2957a/modules/spark/src/main/scala/org/apache/ignite/spark/IgniteContext.scala
----------------------------------------------------------------------
diff --git a/modules/spark/src/main/scala/org/apache/ignite/spark/IgniteContext.scala b/modules/spark/src/main/scala/org/apache/ignite/spark/IgniteContext.scala
index 6e48017..57fe84f 100644
--- a/modules/spark/src/main/scala/org/apache/ignite/spark/IgniteContext.scala
+++ b/modules/spark/src/main/scala/org/apache/ignite/spark/IgniteContext.scala
@@ -20,7 +20,7 @@ package org.apache.ignite.spark
import org.apache.ignite.internal.IgnitionEx
import org.apache.ignite.internal.util.IgniteUtils
-import org.apache.ignite.{IgniteSystemProperties, Ignition, Ignite}
+import org.apache.ignite._
import org.apache.ignite.configuration.{CacheConfiguration, IgniteConfiguration}
import org.apache.spark.{Logging, SparkContext}
import org.apache.spark.sql.SQLContext
@@ -146,14 +146,19 @@ class IgniteContext[K, V](
Ignition.ignite(igniteCfg.getGridName)
}
catch {
- case e: Exception ⇒
+ case e: IgniteIllegalStateException ⇒
try {
igniteCfg.setClientMode(client || driver)
Ignition.start(igniteCfg)
}
catch {
- case e: Exception ⇒ Ignition.ignite(igniteCfg.getGridName)
+ case e: IgniteException ⇒ {
+ logError("Failed to start Ignite client. Will try to use an existing instance with name: "
+ + igniteCfg.getGridName, e)
+
+ Ignition.ignite(igniteCfg.getGridName)
+ }
}
}
}
[8/8] ignite git commit: IGNITE-2523: Fixed several other tests.
Posted by vo...@apache.org.
IGNITE-2523: Fixed several other tests.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/7e09a146
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/7e09a146
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/7e09a146
Branch: refs/heads/ignite-2523
Commit: 7e09a146acefccc885e78c57ca85f754d4db5d45
Parents: 0128f98
Author: vozerov-gridgain <vo...@gridgain.com>
Authored: Thu Feb 4 10:59:59 2016 +0300
Committer: vozerov-gridgain <vo...@gridgain.com>
Committed: Thu Feb 4 10:59:59 2016 +0300
----------------------------------------------------------------------
.../IgniteCacheClientNodeChangingTopologyTest.java | 17 ++++++++++++++++-
...acheAtomicInvalidPartitionHandlingSelfTest.java | 7 +++++--
2 files changed, 21 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/7e09a146/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheClientNodeChangingTopologyTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheClientNodeChangingTopologyTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheClientNodeChangingTopologyTest.java
index 13f2598..c83af51 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheClientNodeChangingTopologyTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheClientNodeChangingTopologyTest.java
@@ -61,7 +61,9 @@ import org.apache.ignite.internal.processors.affinity.GridAffinityFunctionContex
import org.apache.ignite.internal.processors.cache.GridCacheAdapter;
import org.apache.ignite.internal.processors.cache.GridCacheAffinityManager;
import org.apache.ignite.internal.processors.cache.GridCacheEntryEx;
+import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicSingleUpdateRequest;
import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicUpdateRequest;
+import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicUpdateRequestInterface;
import org.apache.ignite.internal.processors.cache.distributed.near.GridNearCacheAdapter;
import org.apache.ignite.internal.processors.cache.distributed.near.GridNearCacheEntry;
import org.apache.ignite.internal.processors.cache.distributed.near.GridNearLockRequest;
@@ -231,7 +233,10 @@ public class IgniteCacheClientNodeChangingTopologyTest extends GridCommonAbstrac
// Block messages requests for both nodes.
spi.blockMessages(GridNearAtomicUpdateRequest.class, ignite0.localNode().id());
+ spi.blockMessages(GridNearAtomicSingleUpdateRequest.class, ignite0.localNode().id());
+
spi.blockMessages(GridNearAtomicUpdateRequest.class, ignite1.localNode().id());
+ spi.blockMessages(GridNearAtomicSingleUpdateRequest.class, ignite1.localNode().id());
final IgniteCache<Integer, Integer> cache = ignite2.cache(null);
@@ -273,6 +278,7 @@ public class IgniteCacheClientNodeChangingTopologyTest extends GridCommonAbstrac
// Block messages requests for single node.
spi.blockMessages(GridNearAtomicUpdateRequest.class, ignite0.localNode().id());
+ spi.blockMessages(GridNearAtomicSingleUpdateRequest.class, ignite0.localNode().id());
putFut = GridTestUtils.runAsync(new Callable<Object>() {
@Override public Object call() throws Exception {
@@ -360,10 +366,16 @@ public class IgniteCacheClientNodeChangingTopologyTest extends GridCommonAbstrac
// Block messages requests for both nodes.
spi.blockMessages(GridNearAtomicUpdateRequest.class, ignite0.localNode().id());
+ spi.blockMessages(GridNearAtomicSingleUpdateRequest.class, ignite0.localNode().id());
+
spi.blockMessages(GridNearAtomicUpdateRequest.class, ignite1.localNode().id());
+ spi.blockMessages(GridNearAtomicSingleUpdateRequest.class, ignite1.localNode().id());
+
spi.blockMessages(GridNearAtomicUpdateRequest.class, ignite2.localNode().id());
+ spi.blockMessages(GridNearAtomicSingleUpdateRequest.class, ignite2.localNode().id());
spi.record(GridNearAtomicUpdateRequest.class);
+ spi.record(GridNearAtomicSingleUpdateRequest.class);
final IgniteCache<Integer, Integer> cache = ignite3.cache(null);
@@ -400,7 +412,7 @@ public class IgniteCacheClientNodeChangingTopologyTest extends GridCommonAbstrac
assertEquals(3, msgs.size());
for (Object msg : msgs)
- assertTrue(((GridNearAtomicUpdateRequest)msg).clientRequest());
+ assertTrue(((GridNearAtomicUpdateRequestInterface)msg).clientRequest());
map.put(primaryKey(ignite0.cache(null)), 3);
map.put(primaryKey(ignite1.cache(null)), 4);
@@ -458,7 +470,10 @@ public class IgniteCacheClientNodeChangingTopologyTest extends GridCommonAbstrac
// Block messages requests for both nodes.
spi.blockMessages(GridNearAtomicUpdateRequest.class, ignite0.localNode().id());
+ spi.blockMessages(GridNearAtomicSingleUpdateRequest.class, ignite0.localNode().id());
+
spi.blockMessages(GridNearAtomicUpdateRequest.class, ignite1.localNode().id());
+ spi.blockMessages(GridNearAtomicSingleUpdateRequest.class, ignite1.localNode().id());
final IgniteCache<Integer, Integer> cache = ignite2.cache(null);
http://git-wip-us.apache.org/repos/asf/ignite/blob/7e09a146/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridCacheAtomicInvalidPartitionHandlingSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridCacheAtomicInvalidPartitionHandlingSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridCacheAtomicInvalidPartitionHandlingSelfTest.java
index 74d2d09..c3bd369 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridCacheAtomicInvalidPartitionHandlingSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridCacheAtomicInvalidPartitionHandlingSelfTest.java
@@ -477,8 +477,11 @@ public class GridCacheAtomicInvalidPartitionHandlingSelfTest extends GridCommonA
private boolean delayMessage(GridIoMessage msg) {
Object origMsg = msg.message();
- return delay &&
- ((origMsg instanceof GridNearAtomicUpdateRequest) || (origMsg instanceof GridDhtAtomicUpdateRequest));
+ return delay && (
+ (origMsg instanceof GridNearAtomicUpdateRequest) ||
+ (origMsg instanceof GridNearAtomicSingleUpdateRequest) ||
+ (origMsg instanceof GridDhtAtomicUpdateRequest)
+ );
}
}
}
\ No newline at end of file
[4/8] ignite git commit: IGNITE-2541: Fixed potential NPE in
GridCacheUpdateAtomicResult caused by unsafe [long -> Long -> long]
transitions.
Posted by vo...@apache.org.
IGNITE-2541: Fixed potential NPE in GridCacheUpdateAtomicResult caused by unsafe [long -> Long -> long] transitions.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/10a2b7a1
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/10a2b7a1
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/10a2b7a1
Branch: refs/heads/ignite-2523
Commit: 10a2b7a18de3d9e0cb3fdf147956c127fa4d4d2b
Parents: 74d9d05
Author: vozerov-gridgain <vo...@gridgain.com>
Authored: Thu Feb 4 09:41:26 2016 +0300
Committer: vozerov-gridgain <vo...@gridgain.com>
Committed: Thu Feb 4 09:41:26 2016 +0300
----------------------------------------------------------------------
.../ignite/internal/processors/cache/GridCacheMapEntry.java | 4 ++--
.../internal/processors/cache/GridCacheUpdateAtomicResult.java | 4 ++--
.../cache/distributed/dht/atomic/GridDhtAtomicUpdateFuture.java | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/10a2b7a1/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
index 64cfd01..ae40295 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMapEntry.java
@@ -2135,7 +2135,7 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
null,
null,
false,
- updateCntr0 == null ? 0 : updateCntr);
+ updateCntr0 == null ? 0 : updateCntr0);
}
}
else
@@ -2431,7 +2431,7 @@ public abstract class GridCacheMapEntry extends GridMetadataAwareAdapter impleme
enqueueVer,
conflictCtx,
true,
- updateCntr0);
+ updateCntr0 == null ? 0 : updateCntr0);
}
/**
http://git-wip-us.apache.org/repos/asf/ignite/blob/10a2b7a1/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUpdateAtomicResult.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUpdateAtomicResult.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUpdateAtomicResult.java
index 9df476e..2355b7c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUpdateAtomicResult.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheUpdateAtomicResult.java
@@ -58,7 +58,7 @@ public class GridCacheUpdateAtomicResult {
private final boolean sndToDht;
/** */
- private final Long updateCntr;
+ private final long updateCntr;
/** Value computed by entry processor. */
private IgniteBiTuple<Object, Exception> res;
@@ -137,7 +137,7 @@ public class GridCacheUpdateAtomicResult {
/**
* @return Partition update index.
*/
- public Long updateCounter() {
+ public long updateCounter() {
return updateCntr;
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/10a2b7a1/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateFuture.java
index e31af19..06c8441 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateFuture.java
@@ -225,7 +225,7 @@ public class GridDhtAtomicUpdateFuture extends GridFutureAdapter<Void>
@Nullable GridCacheVersion conflictVer,
boolean addPrevVal,
@Nullable CacheObject prevVal,
- @Nullable Long updateCntr) {
+ long updateCntr) {
AffinityTopologyVersion topVer = updateReq.topologyVersion();
Collection<ClusterNode> dhtNodes = cctx.dht().topology().nodes(entry.partition(), topVer);
[7/8] ignite git commit: IGNITE-2523: Fixed
IgniteCacheAtomicStopBusySelfTest.
Posted by vo...@apache.org.
IGNITE-2523: Fixed IgniteCacheAtomicStopBusySelfTest.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/0128f988
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/0128f988
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/0128f988
Branch: refs/heads/ignite-2523
Commit: 0128f988c60cdbd9aec6996626b6ffb1ad1fa30e
Parents: d3e1645
Author: vozerov-gridgain <vo...@gridgain.com>
Authored: Thu Feb 4 10:54:25 2016 +0300
Committer: vozerov-gridgain <vo...@gridgain.com>
Committed: Thu Feb 4 10:54:25 2016 +0300
----------------------------------------------------------------------
.../processors/cache/IgniteCacheAtomicStopBusySelfTest.java | 5 +++++
1 file changed, 5 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/0128f988/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAtomicStopBusySelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAtomicStopBusySelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAtomicStopBusySelfTest.java
index cdb7907..024ff2f 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAtomicStopBusySelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAtomicStopBusySelfTest.java
@@ -18,6 +18,7 @@
package org.apache.ignite.internal.processors.cache;
import org.apache.ignite.cache.CacheAtomicityMode;
+import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicSingleUpdateRequest;
import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicUpdateRequest;
/**
@@ -32,6 +33,7 @@ public class IgniteCacheAtomicStopBusySelfTest extends IgniteCacheAbstractStopBu
/** {@inheritDoc} */
@Override public void testPut() throws Exception {
bannedMsg.set(GridNearAtomicUpdateRequest.class);
+ bannedMsg.set(GridNearAtomicSingleUpdateRequest.class);
super.testPut();
}
@@ -39,6 +41,7 @@ public class IgniteCacheAtomicStopBusySelfTest extends IgniteCacheAbstractStopBu
/** {@inheritDoc} */
@Override public void testPutBatch() throws Exception {
bannedMsg.set(GridNearAtomicUpdateRequest.class);
+ bannedMsg.set(GridNearAtomicSingleUpdateRequest.class);
super.testPut();
}
@@ -46,6 +49,7 @@ public class IgniteCacheAtomicStopBusySelfTest extends IgniteCacheAbstractStopBu
/** {@inheritDoc} */
@Override public void testPutAsync() throws Exception {
bannedMsg.set(GridNearAtomicUpdateRequest.class);
+ bannedMsg.set(GridNearAtomicSingleUpdateRequest.class);
super.testPut();
}
@@ -53,6 +57,7 @@ public class IgniteCacheAtomicStopBusySelfTest extends IgniteCacheAbstractStopBu
/** {@inheritDoc} */
@Override public void testRemove() throws Exception {
bannedMsg.set(GridNearAtomicUpdateRequest.class);
+ bannedMsg.set(GridNearAtomicSingleUpdateRequest.class);
super.testPut();
}
[3/8] ignite git commit: Fixed GridFactorySelfTest which started
failing due to minor change in exception message.
Posted by vo...@apache.org.
Fixed GridFactorySelfTest which started failing due to minor change in exception message.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/74d9d05b
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/74d9d05b
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/74d9d05b
Branch: refs/heads/ignite-2523
Commit: 74d9d05b7cee071dad4c50a3a053781d78a488a8
Parents: d1e2957
Author: vozerov-gridgain <vo...@gridgain.com>
Authored: Thu Feb 4 09:36:52 2016 +0300
Committer: vozerov-gridgain <vo...@gridgain.com>
Committed: Thu Feb 4 09:36:52 2016 +0300
----------------------------------------------------------------------
.../test/java/org/apache/ignite/internal/GridFactorySelfTest.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/74d9d05b/modules/spring/src/test/java/org/apache/ignite/internal/GridFactorySelfTest.java
----------------------------------------------------------------------
diff --git a/modules/spring/src/test/java/org/apache/ignite/internal/GridFactorySelfTest.java b/modules/spring/src/test/java/org/apache/ignite/internal/GridFactorySelfTest.java
index d72b577..cca3e8b 100644
--- a/modules/spring/src/test/java/org/apache/ignite/internal/GridFactorySelfTest.java
+++ b/modules/spring/src/test/java/org/apache/ignite/internal/GridFactorySelfTest.java
@@ -469,7 +469,7 @@ public class GridFactorySelfTest extends GridCommonAbstractTest {
String msg = e.getMessage();
if (msg != null &&
- (msg.contains("Default grid instance has already been started.") ||
+ (msg.contains("Default Ignite instance has already been started.") ||
msg.contains("Ignite instance with this name has already been started:")))
info("Caught expected exception: " + msg);
else
[5/8] ignite git commit: Merge branch 'master' into ignite-2523
Posted by vo...@apache.org.
Merge branch 'master' into ignite-2523
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/3d34e50c
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/3d34e50c
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/3d34e50c
Branch: refs/heads/ignite-2523
Commit: 3d34e50c9ece0d12e35a0ff6130659cfa03bdddf
Parents: 3967130 10a2b7a
Author: vozerov-gridgain <vo...@gridgain.com>
Authored: Thu Feb 4 10:44:33 2016 +0300
Committer: vozerov-gridgain <vo...@gridgain.com>
Committed: Thu Feb 4 10:44:33 2016 +0300
----------------------------------------------------------------------
.../processors/cache/GridCacheAdapter.java | 100 ++++++++++++++++++-
.../processors/cache/GridCacheMapEntry.java | 4 +-
.../cache/GridCacheUpdateAtomicResult.java | 4 +-
.../dht/atomic/GridDhtAtomicUpdateFuture.java | 2 +-
.../org/apache/ignite/spark/IgniteContext.scala | 11 +-
.../ignite/internal/GridFactorySelfTest.java | 2 +-
6 files changed, 110 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/3d34e50c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/atomic/GridDhtAtomicUpdateFuture.java
----------------------------------------------------------------------