You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2015/04/09 11:20:28 UTC
[01/12] incubator-ignite git commit: # ignite-694
Repository: incubator-ignite
Updated Branches:
refs/heads/ignite-sprint-3 5fcb07292 -> 8803e1798
# ignite-694
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/db754aba
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/db754aba
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/db754aba
Branch: refs/heads/ignite-sprint-3
Commit: db754aba1fcf9d762dba9b96e5333afde7efa0dd
Parents: 6553549
Author: sboikov <sb...@gridgain.com>
Authored: Tue Apr 7 17:17:08 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Tue Apr 7 17:17:08 2015 +0300
----------------------------------------------------------------------
.../processors/cache/GridCacheIoManager.java | 77 ++++++------
.../GridCachePartitionExchangeManager.java | 121 ++++++++++++++++++-
.../IgniteCacheAtomicNodeJoinTest.java | 44 +++++++
.../IgniteCacheNodeJoinAbstractTest.java | 109 +++++++++++++++++
.../distributed/IgniteCacheTxNodeJoinTest.java | 38 ++++++
.../IgniteCacheFailoverTestSuite.java | 4 +
6 files changed, 356 insertions(+), 37 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db754aba/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
index 7bd6726..8805853 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
@@ -23,6 +23,7 @@ import org.apache.ignite.internal.*;
import org.apache.ignite.internal.cluster.*;
import org.apache.ignite.internal.managers.communication.*;
import org.apache.ignite.internal.managers.deployment.*;
+import org.apache.ignite.internal.processors.affinity.*;
import org.apache.ignite.internal.util.*;
import org.apache.ignite.internal.util.lang.*;
import org.apache.ignite.internal.util.typedef.*;
@@ -76,7 +77,6 @@ public class GridCacheIoManager extends GridCacheSharedManagerAdapter {
/** Message listener. */
private GridMessageListener lsnr = new GridMessageListener() {
- @SuppressWarnings("unchecked")
@Override public void onMessage(final UUID nodeId, Object msg) {
if (log.isDebugEnabled())
log.debug("Received unordered cache communication message [nodeId=" + nodeId +
@@ -84,44 +84,20 @@ public class GridCacheIoManager extends GridCacheSharedManagerAdapter {
final GridCacheMessage cacheMsg = (GridCacheMessage)msg;
- int msgIdx = cacheMsg.lookupIndex();
+ AffinityTopologyVersion locAffVer = cctx.exchange().topologyVersion();
+ AffinityTopologyVersion rmtAffVer = cacheMsg.topologyVersion();
- IgniteBiInClosure<UUID, GridCacheMessage> c = null;
-
- if (msgIdx >= 0) {
- IgniteBiInClosure[] cacheClsHandlers = idxClsHandlers.get(cacheMsg.cacheId());
-
- if (cacheClsHandlers != null)
- c = cacheClsHandlers[msgIdx];
- }
-
- if (c == null)
- c = clsHandlers.get(new ListenerKey(cacheMsg.cacheId(), cacheMsg.getClass()));
-
- if (c == null) {
- if (log.isDebugEnabled())
- log.debug("Received message without registered handler (will ignore) [msg=" + msg +
- ", nodeId=" + nodeId + ']');
-
- return;
- }
-
- long locTopVer = cctx.discovery().topologyVersion();
- long rmtTopVer = cacheMsg.topologyVersion().topologyVersion();
-
- if (locTopVer < rmtTopVer) {
+ if (locAffVer.compareTo(rmtAffVer) < 0) {
if (log.isDebugEnabled())
log.debug("Received message has higher topology version [msg=" + msg +
- ", locTopVer=" + locTopVer + ", rmtTopVer=" + rmtTopVer + ']');
-
- IgniteInternalFuture<Long> topFut = cctx.discovery().topologyFuture(rmtTopVer);
+ ", locTopVer=" + locAffVer + ", rmtTopVer=" + rmtAffVer + ']');
- if (!topFut.isDone()) {
- final IgniteBiInClosure<UUID, GridCacheMessage> c0 = c;
+ IgniteInternalFuture<?> topFut = cctx.exchange().affinityReadyFuture(rmtAffVer);
- topFut.listen(new CI1<IgniteInternalFuture<Long>>() {
- @Override public void apply(IgniteInternalFuture<Long> t) {
- onMessage0(nodeId, cacheMsg, c0);
+ if (topFut != null && !topFut.isDone()) {
+ topFut.listen(new CI1<IgniteInternalFuture<?>>() {
+ @Override public void apply(IgniteInternalFuture<?> t) {
+ handleMessage(nodeId, cacheMsg);
}
});
@@ -129,10 +105,41 @@ public class GridCacheIoManager extends GridCacheSharedManagerAdapter {
}
}
- onMessage0(nodeId, cacheMsg, c);
+ handleMessage(nodeId, cacheMsg);
}
};
+ /**
+ * @param nodeId Sender node ID.
+ * @param cacheMsg Message.
+ */
+ @SuppressWarnings("unchecked")
+ private void handleMessage(UUID nodeId, GridCacheMessage cacheMsg) {
+ int msgIdx = cacheMsg.lookupIndex();
+
+ IgniteBiInClosure<UUID, GridCacheMessage> c = null;
+
+ if (msgIdx >= 0) {
+ IgniteBiInClosure[] cacheClsHandlers = idxClsHandlers.get(cacheMsg.cacheId());
+
+ if (cacheClsHandlers != null)
+ c = cacheClsHandlers[msgIdx];
+ }
+
+ if (c == null)
+ c = clsHandlers.get(new ListenerKey(cacheMsg.cacheId(), cacheMsg.getClass()));
+
+ if (c == null) {
+ if (log.isDebugEnabled())
+ log.debug("Received message without registered handler (will ignore) [msg=" + cacheMsg +
+ ", nodeId=" + nodeId + ']');
+
+ return;
+ }
+
+ onMessage0(nodeId, cacheMsg, c);
+ }
+
/** {@inheritDoc} */
@Override public void start0() throws IgniteCheckedException {
retryDelay = cctx.gridConfig().getNetworkSendRetryDelay();
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db754aba/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
index d2d3531..e8e3ea1 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
@@ -90,6 +90,14 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
/** */
private volatile GridDhtPartitionsExchangeFuture lastInitializedFut;
+ /** */
+ private final ConcurrentMap<AffinityTopologyVersion, AffinityReadyFuture> readyFuts = new ConcurrentHashMap8<>();
+
+ /** */
+ private final AtomicReference<AffinityTopologyVersion> readyTopVer =
+ new AtomicReference<>(AffinityTopologyVersion.NONE);
+
+
/**
* Partition map futures.
* This set also contains already completed exchange futures to address race conditions when coordinator
@@ -311,6 +319,9 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
for (GridDhtPartitionsExchangeFuture f : exchFuts.values())
f.onDone(new IgniteInterruptedCheckedException("Grid is stopping: " + cctx.gridName()));
+ for (AffinityReadyFuture f : readyFuts.values())
+ f.onDone(new IgniteInterruptedCheckedException("Grid is stopping: " + cctx.gridName()));
+
U.cancel(exchWorker);
if (log.isDebugEnabled())
@@ -372,7 +383,10 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
* @return Topology version.
*/
public AffinityTopologyVersion topologyVersion() {
- return lastInitializedFut.exchangeId().topologyVersion();
+ GridDhtPartitionsExchangeFuture lastInitializedFut0 = lastInitializedFut;
+
+ return lastInitializedFut0 != null
+ ? lastInitializedFut0.exchangeId().topologyVersion() : AffinityTopologyVersion.NONE;
}
/**
@@ -383,6 +397,49 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
}
/**
+ * @param ver Topology version.
+ * @return Future or {@code null} is future is already completed.
+ */
+ @Nullable IgniteInternalFuture<?> affinityReadyFuture(AffinityTopologyVersion ver) {
+ GridDhtPartitionsExchangeFuture lastInitializedFut0 = lastInitializedFut;
+
+ if (lastInitializedFut0 != null && lastInitializedFut0.topologyVersion().compareTo(ver) >= 0) {
+ if (log.isDebugEnabled())
+ log.debug("Return lastInitializedFut for topology ready future " +
+ "[ver=" + ver + ", fut=" + lastInitializedFut0 + ']');
+
+ return lastInitializedFut0;
+ }
+
+ AffinityTopologyVersion topVer = readyTopVer.get();
+
+ if (topVer.compareTo(ver) >= 0) {
+ if (log.isDebugEnabled())
+ log.debug("Return finished future for topology ready future [ver=" + ver + ", topVer=" + topVer + ']');
+
+ return null;
+ }
+
+ GridFutureAdapter<AffinityTopologyVersion> fut = F.addIfAbsent(readyFuts, ver,
+ new AffinityReadyFuture(ver));
+
+ if (log.isDebugEnabled())
+ log.debug("Created topology ready future [ver=" + ver + ", fut=" + fut + ']');
+
+ topVer = readyTopVer.get();
+
+ if (topVer.compareTo(ver) >= 0) {
+ if (log.isDebugEnabled())
+ log.debug("Completing created topology ready future " +
+ "[ver=" + topVer + ", topVer=" + topVer + ", fut=" + fut + ']');
+
+ fut.onDone(topVer);
+ }
+
+ return fut;
+ }
+
+ /**
* @return {@code true} if entered to busy state.
*/
private boolean enterBusy() {
@@ -642,8 +699,38 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
/**
* @param exchFut Exchange.
+ * @param err Error.
*/
- public void onExchangeDone(GridDhtPartitionsExchangeFuture exchFut, Throwable err) {
+ public void onExchangeDone(GridDhtPartitionsExchangeFuture exchFut, @Nullable Throwable err) {
+ if (err == null) {
+ AffinityTopologyVersion topVer = exchFut.topologyVersion();
+
+ if (log.isDebugEnabled())
+ log.debug("Exchange done [topVer=" + topVer + ", fut=" + exchFut + ']');
+
+ while (true) {
+ AffinityTopologyVersion readyVer = readyTopVer.get();
+
+ if (readyVer.compareTo(topVer) >= 0)
+ break;
+
+ if (readyTopVer.compareAndSet(readyVer, topVer))
+ break;
+ }
+
+ for (Map.Entry<AffinityTopologyVersion, AffinityReadyFuture> entry : readyFuts.entrySet()) {
+ if (entry.getKey().compareTo(topVer) <= 0) {
+ if (log.isDebugEnabled())
+ log.debug("Completing created topology ready future " +
+ "[ver=" + topVer + ", fut=" + entry.getValue() + ']');
+
+ entry.getValue().onDone(topVer);
+ }
+ }
+ }
+ else if (log.isDebugEnabled())
+ log.debug("Exchange done with error [fut=" + exchFut + ", err=" + err + ']');
+
ExchangeFutureSet exchFuts0 = exchFuts;
if (exchFuts0 != null) {
@@ -1130,4 +1217,34 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
*/
protected abstract void onMessage(ClusterNode node, M msg);
}
+
+ /**
+ * Affinity ready future.
+ */
+ private class AffinityReadyFuture extends GridFutureAdapter<AffinityTopologyVersion> {
+ /** */
+ private static final long serialVersionUID = 0L;
+
+ /** */
+ private AffinityTopologyVersion topVer;
+
+ /**
+ * @param topVer Topology version.
+ */
+ private AffinityReadyFuture(AffinityTopologyVersion topVer) {
+ this.topVer = topVer;
+ }
+
+ /** {@inheritDoc} */
+ @Override public boolean onDone(AffinityTopologyVersion res, @Nullable Throwable err) {
+ assert res != null || err != null;
+
+ boolean done = super.onDone(res, err);
+
+ if (done)
+ readyFuts.remove(topVer, this);
+
+ return done;
+ }
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db754aba/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheAtomicNodeJoinTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheAtomicNodeJoinTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheAtomicNodeJoinTest.java
new file mode 100644
index 0000000..c0818bd
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheAtomicNodeJoinTest.java
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.processors.cache.distributed;
+
+import org.apache.ignite.cache.*;
+import org.apache.ignite.configuration.*;
+
+import static org.apache.ignite.cache.CacheAtomicWriteOrderMode.*;
+import static org.apache.ignite.cache.CacheAtomicityMode.*;
+
+/**
+ *
+ */
+public class IgniteCacheAtomicNodeJoinTest extends IgniteCacheNodeJoinAbstractTest {
+ /** {@inheritDoc} */
+ @Override protected CacheAtomicWriteOrderMode atomicWriteOrderMode() {
+ return PRIMARY;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected CacheAtomicityMode atomicityMode() {
+ return ATOMIC;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected NearCacheConfiguration nearConfiguration() {
+ return null;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db754aba/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheNodeJoinAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheNodeJoinAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheNodeJoinAbstractTest.java
new file mode 100644
index 0000000..bed83ec
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheNodeJoinAbstractTest.java
@@ -0,0 +1,109 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.processors.cache.distributed;
+
+import org.apache.ignite.*;
+import org.apache.ignite.cache.*;
+import org.apache.ignite.configuration.*;
+import org.apache.ignite.internal.*;
+import org.apache.ignite.internal.processors.cache.*;
+import org.apache.ignite.testframework.*;
+
+import java.util.*;
+import java.util.concurrent.*;
+import java.util.concurrent.atomic.*;
+
+import static org.apache.ignite.cache.CacheMode.*;
+
+/**
+ *
+ */
+public abstract class IgniteCacheNodeJoinAbstractTest extends IgniteCacheAbstractTest {
+ /** {@inheritDoc} */
+ @Override protected CacheMode cacheMode() {
+ return PARTITIONED;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected int gridCount() {
+ return 1;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected CacheConfiguration cacheConfiguration(String gridName) throws Exception {
+ CacheConfiguration cfg = super.cacheConfiguration(gridName);
+
+ cfg.setReadFromBackup(false); // Force remote 'get'.
+
+ return cfg;
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testGet() throws Exception {
+ final IgniteCache<Integer, Integer> cache = jcache(0);
+
+ final int KEYS = 1000;
+
+ Map<Integer, Integer> map = new HashMap<>();
+
+ for (int i = 0; i < KEYS; i++)
+ map.put(i, i);
+
+ for (int i = 0; i < 10; i++) {
+ log.info("Iteration: " + i);
+
+ cache.putAll(map);
+
+ final IgniteInternalFuture fut = GridTestUtils.runAsync(new Callable<Void>() {
+ @Override public Void call() throws Exception {
+ startGrid(1);
+
+ return null;
+ }
+ });
+
+ final AtomicBoolean stop = new AtomicBoolean();
+
+ GridTestUtils.runMultiThreaded(new Callable<Void>() {
+ @Override public Void call() throws Exception {
+ while (!stop.get() && !fut.isDone()) {
+ for (int key = 0; key < KEYS; key++) {
+ assertNotNull(cache.get(key));
+
+ if (key % 100 == 0 && fut.isDone())
+ break;
+ }
+ }
+
+ return null;
+ }
+ }, 10, "test-get");
+
+ try {
+ fut.get(60_000);
+ }
+ finally {
+ stop.set(true);
+ }
+
+ stopGrid(1);
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db754aba/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheTxNodeJoinTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheTxNodeJoinTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheTxNodeJoinTest.java
new file mode 100644
index 0000000..d250cd6
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCacheTxNodeJoinTest.java
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.processors.cache.distributed;
+
+import org.apache.ignite.cache.*;
+import org.apache.ignite.configuration.*;
+
+import static org.apache.ignite.cache.CacheAtomicityMode.*;
+
+/**
+ *
+ */
+public class IgniteCacheTxNodeJoinTest extends IgniteCacheNodeJoinAbstractTest {
+ /** {@inheritDoc} */
+ @Override protected CacheAtomicityMode atomicityMode() {
+ return TRANSACTIONAL;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected NearCacheConfiguration nearConfiguration() {
+ return null;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/db754aba/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java
index 9556235..da79c55 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheFailoverTestSuite.java
@@ -19,6 +19,7 @@ package org.apache.ignite.testsuites;
import junit.framework.*;
import org.apache.ignite.internal.processors.cache.*;
+import org.apache.ignite.internal.processors.cache.distributed.*;
import org.apache.ignite.internal.processors.cache.distributed.dht.*;
import org.apache.ignite.internal.processors.cache.distributed.dht.atomic.*;
import org.apache.ignite.internal.processors.cache.distributed.near.*;
@@ -56,6 +57,9 @@ public class IgniteCacheFailoverTestSuite extends TestSuite {
//suite.addTestSuite(GridCacheColocatedFailoverSelfTest.class); TODO IGNITE-631.
//suite.addTestSuite(GridCacheReplicatedFailoverSelfTest.class); TODO IGNITE-631.
+ suite.addTestSuite(IgniteCacheAtomicNodeJoinTest.class);
+ suite.addTestSuite(IgniteCacheTxNodeJoinTest.class);
+
return suite;
}
}
[07/12] incubator-ignite git commit: # ignite-694
Posted by sb...@apache.org.
# ignite-694
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/7f7c829c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/7f7c829c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/7f7c829c
Branch: refs/heads/ignite-sprint-3
Commit: 7f7c829c8f9a65016fcae4847c7991f5a6acc59d
Parents: 8474a0a
Author: sboikov <sb...@gridgain.com>
Authored: Wed Apr 8 15:47:35 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Wed Apr 8 15:47:35 2015 +0300
----------------------------------------------------------------------
.../cache/distributed/dht/GridDhtAffinityAssignmentRequest.java | 5 +++++
.../distributed/dht/GridDhtAffinityAssignmentResponse.java | 5 +++++
2 files changed, 10 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7f7c829c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentRequest.java
index cdb52c7..2f3fa23 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentRequest.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentRequest.java
@@ -56,6 +56,11 @@ public class GridDhtAffinityAssignmentRequest extends GridCacheMessage {
return true;
}
+ /** {@inheritDoc} */
+ @Override public boolean partitionExchangeMessage() {
+ return true;
+ }
+
/**
* @return Requested topology version.
*/
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7f7c829c/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentResponse.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentResponse.java
index 375d5fc..73b4a48 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentResponse.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentResponse.java
@@ -72,6 +72,11 @@ public class GridDhtAffinityAssignmentResponse extends GridCacheMessage {
return true;
}
+ /** {@inheritDoc} */
+ @Override public boolean partitionExchangeMessage() {
+ return true;
+ }
+
/**
* @return Topology version.
*/
[03/12] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/ignite-sprint-3' into ignite-694
Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-3' into ignite-694
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/5042e3b7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/5042e3b7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/5042e3b7
Branch: refs/heads/ignite-sprint-3
Commit: 5042e3b7bcc1498992e536a8c6f0e7b21c5bbb0a
Parents: 93948ff cbab850
Author: sboikov <sb...@gridgain.com>
Authored: Wed Apr 8 09:21:38 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Wed Apr 8 09:21:38 2015 +0300
----------------------------------------------------------------------
.../dht/GridClientPartitionTopology.java | 6 +-
.../distributed/dht/GridDhtLockFuture.java | 10 +-
.../dht/GridDhtPartitionTopologyImpl.java | 6 +-
.../distributed/dht/GridDhtTxLocalAdapter.java | 49 +++++----
.../distributed/dht/GridDhtTxPrepareFuture.java | 2 +-
.../org/apache/ignite/spi/IgniteSpiAdapter.java | 24 +++-
.../communication/tcp/TcpCommunicationSpi.java | 14 +--
.../discovery/tcp/TcpClientDiscoverySpi.java | 47 ++++----
.../spi/discovery/tcp/TcpDiscoverySpi.java | 78 ++++++-------
.../discovery/tcp/TcpDiscoverySpiAdapter.java | 8 +-
.../spi/swapspace/file/FileSwapSpaceSpi.java | 4 +-
.../resources/META-INF/classnames.properties | 19 ++--
.../cache/IgniteDynamicCacheStartSelfTest.java | 23 ++++
...ePartitionedBasicStoreMultiNodeSelfTest.java | 110 ++-----------------
.../GridAbstractCommunicationSelfTest.java | 3 +-
.../GridTcpCommunicationSpiAbstractTest.java | 5 +-
...mmunicationSpiConcurrentConnectSelfTest.java | 3 +-
...cpCommunicationSpiMultithreadedSelfTest.java | 3 +-
...dTcpCommunicationSpiRecoveryAckSelfTest.java | 3 +-
...GridTcpCommunicationSpiRecoverySelfTest.java | 2 +-
.../ignite/testsuites/IgniteCacheTestSuite.java | 3 +-
parent/pom.xml | 2 +-
pom.xml | 1 +
23 files changed, 198 insertions(+), 227 deletions(-)
----------------------------------------------------------------------
[08/12] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/ignite-sprint-3' into ignite-694
Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-3' into ignite-694
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/7908aea9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/7908aea9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/7908aea9
Branch: refs/heads/ignite-sprint-3
Commit: 7908aea91ad23d04efd1e6bbbc0ae796e72c0880
Parents: 8474a0a 5e9addb
Author: sboikov <sb...@gridgain.com>
Authored: Thu Apr 9 09:02:56 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Thu Apr 9 09:02:56 2015 +0300
----------------------------------------------------------------------
.../apache/ignite/internal/IgniteKernal.java | 7 +-
.../org/apache/ignite/internal/IgnitionEx.java | 171 +++-----
.../cache/transactions/IgniteTxManager.java | 6 +-
.../ignite/internal/visor/cache/VisorCache.java | 2 +-
.../cache/VisorCacheAggregatedMetrics.java | 38 +-
.../visor/cache/VisorCacheConfiguration.java | 17 +-
.../internal/visor/cache/VisorCacheMetrics.java | 53 ++-
.../cache/VisorCacheMetricsCollectorTask.java | 59 ++-
.../visor/cache/VisorCacheStopTask.java | 69 +++
.../h2/twostep/GridReduceQueryExecutor.java | 2 +-
.../commands/cache/VisorCacheCommand.scala | 423 +++++++++++--------
.../commands/cache/VisorCacheStopCommand.scala | 145 +++++++
12 files changed, 657 insertions(+), 335 deletions(-)
----------------------------------------------------------------------
[05/12] incubator-ignite git commit: # ignite-694
Posted by sb...@apache.org.
# ignite-694
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/327a1086
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/327a1086
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/327a1086
Branch: refs/heads/ignite-sprint-3
Commit: 327a1086d60b46c49fe3fbfc73af49c21f1238f4
Parents: 76d80f4
Author: sboikov <sb...@gridgain.com>
Authored: Wed Apr 8 12:13:37 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Wed Apr 8 12:13:37 2015 +0300
----------------------------------------------------------------------
.../processors/cache/GridCacheIoManager.java | 44 +++++++++++++-------
.../processors/cache/GridCacheMessage.java | 7 ++++
.../GridCachePartitionExchangeManager.java | 12 +++++-
.../GridDhtPartitionsAbstractMessage.java | 15 ++++---
4 files changed, 57 insertions(+), 21 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/327a1086/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
index 09fe2e0..6fefdfd 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
@@ -84,27 +84,43 @@ public class GridCacheIoManager extends GridCacheSharedManagerAdapter {
final GridCacheMessage cacheMsg = (GridCacheMessage)msg;
- AffinityTopologyVersion locAffVer = cctx.exchange().topologyVersion();
- AffinityTopologyVersion rmtAffVer = cacheMsg.topologyVersion();
+ IgniteInternalFuture<?> fut = null;
- if (locAffVer.compareTo(rmtAffVer) < 0) {
- if (log.isDebugEnabled())
- log.debug("Received message has higher topology version [msg=" + msg +
- ", locTopVer=" + locAffVer + ", rmtTopVer=" + rmtAffVer + ']');
+ if (cacheMsg.partitionExchangeMessage()) {
+ long locTopVer = cctx.discovery().topologyVersion();
+ long rmtTopVer = cacheMsg.topologyVersion().topologyVersion();
- IgniteInternalFuture<?> topFut = cctx.exchange().affinityReadyFuture(rmtAffVer);
+ if (locTopVer < rmtTopVer) {
+ if (log.isDebugEnabled())
+ log.debug("Received message has higher topology version [msg=" + msg +
+ ", locTopVer=" + locTopVer + ", rmtTopVer=" + rmtTopVer + ']');
- if (topFut != null && !topFut.isDone()) {
- topFut.listen(new CI1<IgniteInternalFuture<?>>() {
- @Override public void apply(IgniteInternalFuture<?> t) {
- handleMessage(nodeId, cacheMsg);
- }
- });
+ fut = cctx.discovery().topologyFuture(rmtTopVer);
+ }
+ }
+ else {
+ AffinityTopologyVersion locAffVer = cctx.exchange().readyAffinityVersion();
+ AffinityTopologyVersion rmtAffVer = cacheMsg.topologyVersion();
- return;
+ if (locAffVer.compareTo(rmtAffVer) < 0) {
+ if (log.isDebugEnabled())
+ log.debug("Received message has higher affinity topology version [msg=" + msg +
+ ", locTopVer=" + locAffVer + ", rmtTopVer=" + rmtAffVer + ']');
+
+ fut = cctx.exchange().affinityReadyFuture(rmtAffVer);
}
}
+ if (fut != null && !fut.isDone()) {
+ fut.listen(new CI1<IgniteInternalFuture<?>>() {
+ @Override public void apply(IgniteInternalFuture<?> t) {
+ handleMessage(nodeId, cacheMsg);
+ }
+ });
+
+ return;
+ }
+
handleMessage(nodeId, cacheMsg);
}
};
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/327a1086/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMessage.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMessage.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMessage.java
index b9bce3e..fefd582 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMessage.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheMessage.java
@@ -86,6 +86,13 @@ public abstract class GridCacheMessage implements Message {
}
/**
+ * @return {@code True} if this message is partition exchange message.
+ */
+ public boolean partitionExchangeMessage() {
+ return false;
+ }
+
+ /**
* @return {@code True} if class loading errors should be ignored, false otherwise.
*/
public boolean ignoreClassErrors() {
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/327a1086/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
index e8e3ea1..0955328 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
@@ -372,13 +372,15 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
/**
* @param cacheId Cache ID.
+ * @return Client partition topology.
*/
public GridClientPartitionTopology clearClientTopology(int cacheId) {
return clientTops.remove(cacheId);
}
/**
- * Gets topology version of last completed partition exchange.
+ * Gets topology version of last partition exchange, it is possible that last partition exchange
+ * is not completed yet.
*
* @return Topology version.
*/
@@ -390,6 +392,13 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
}
/**
+ * @return Topology version of latest completed partition exchange.
+ */
+ public AffinityTopologyVersion readyAffinityVersion() {
+ return readyTopVer.get();
+ }
+
+ /**
* @return Last completed topology future.
*/
public GridDhtTopologyFuture lastTopologyFuture() {
@@ -796,7 +805,6 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
if (top != null)
updated |= top.update(null, entry.getValue()) != null;
-
}
if (updated)
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/327a1086/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsAbstractMessage.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsAbstractMessage.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsAbstractMessage.java
index 6af0072..5a8616d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsAbstractMessage.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsAbstractMessage.java
@@ -46,11 +46,6 @@ abstract class GridDhtPartitionsAbstractMessage extends GridCacheMessage {
// No-op.
}
- /** {@inheritDoc} */
- @Override public boolean allowForStartup() {
- return true;
- }
-
/**
* @param exchId Exchange ID.
* @param lastVer Last version.
@@ -60,6 +55,16 @@ abstract class GridDhtPartitionsAbstractMessage extends GridCacheMessage {
this.lastVer = lastVer;
}
+ /** {@inheritDoc} */
+ @Override public boolean allowForStartup() {
+ return true;
+ }
+
+ /** {@inheritDoc} */
+ @Override public boolean partitionExchangeMessage() {
+ return true;
+ }
+
/**
* @return Exchange ID.
*/
[04/12] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/ignite-sprint-3' into ignite-694
Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-3' into ignite-694
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/76d80f44
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/76d80f44
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/76d80f44
Branch: refs/heads/ignite-sprint-3
Commit: 76d80f4412ac08c224ad410e873d0c607f9d110d
Parents: 5042e3b 3f6beb3
Author: sboikov <sb...@gridgain.com>
Authored: Wed Apr 8 10:31:35 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Wed Apr 8 10:31:35 2015 +0300
----------------------------------------------------------------------
.../ignite/internal/processors/cache/GridCacheIoManager.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/76d80f44/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheIoManager.java
----------------------------------------------------------------------
[10/12] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/ignite-sprint-3' into ignite-694
Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-3' into ignite-694
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/9eb3fceb
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/9eb3fceb
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/9eb3fceb
Branch: refs/heads/ignite-sprint-3
Commit: 9eb3fceb17d7ef0e11370f0de65ad641860a8b53
Parents: 32aa57c 3e6da9c
Author: sboikov <sb...@gridgain.com>
Authored: Thu Apr 9 10:13:17 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Thu Apr 9 10:13:17 2015 +0300
----------------------------------------------------------------------
.../src/main/java/org/apache/ignite/Ignite.java | 11 +
.../java/org/apache/ignite/IgniteCluster.java | 9 +-
.../ignite/cluster/ClusterStartNodeResult.java | 46 +
.../ignite/internal/ClusterMetricsSnapshot.java | 384 +++------
.../apache/ignite/internal/IgniteKernal.java | 30 +-
.../cluster/ClusterStartNodeResultImpl.java | 87 ++
.../cluster/IgniteClusterAsyncImpl.java | 5 +-
.../internal/cluster/IgniteClusterImpl.java | 37 +-
.../cache/DynamicCacheChangeRequest.java | 2 +-
.../processors/cache/GridCacheProcessor.java | 130 +--
.../ignite/internal/util/lang/GridFunc.java | 33 +
.../util/nodestart/IgniteNodeCallable.java | 30 -
.../util/nodestart/IgniteSshHelper.java | 2 +-
.../util/nodestart/StartNodeCallable.java | 30 +
.../messages/TcpDiscoveryAbstractMessage.java | 24 +-
.../messages/TcpDiscoveryAuthFailedMessage.java | 25 +-
.../TcpDiscoveryCheckFailedMessage.java | 24 +-
.../TcpDiscoveryClientReconnectMessage.java | 30 +-
.../TcpDiscoveryCustomEventMessage.java | 23 +-
.../messages/TcpDiscoveryDiscardMessage.java | 24 +-
.../TcpDiscoveryDuplicateIdMessage.java | 24 +-
.../messages/TcpDiscoveryHandshakeRequest.java | 8 -
.../messages/TcpDiscoveryHandshakeResponse.java | 22 -
.../messages/TcpDiscoveryHeartbeatMessage.java | 44 +-
.../TcpDiscoveryJoinRequestMessage.java | 28 +-
.../TcpDiscoveryLoopbackProblemMessage.java | 28 +-
.../TcpDiscoveryNodeAddFinishedMessage.java | 24 +-
.../messages/TcpDiscoveryNodeAddedMessage.java | 60 +-
.../messages/TcpDiscoveryNodeFailedMessage.java | 28 +-
.../messages/TcpDiscoveryNodeLeftMessage.java | 8 -
.../tcp/messages/TcpDiscoveryPingRequest.java | 25 +-
.../tcp/messages/TcpDiscoveryPingResponse.java | 14 -
.../TcpDiscoveryStatusCheckMessage.java | 30 +-
...teCacheConfigurationDefaultTemplateTest.java | 111 +++
...eCacheConfigurationTemplateNotFoundTest.java | 114 ---
.../IgniteCacheConfigurationTemplateTest.java | 86 +-
.../ignite/testframework/junits/IgniteMock.java | 5 +
.../ignite/testsuites/IgniteCacheTestSuite.java | 2 +-
.../processors/query/h2/sql/GridSqlElement.java | 8 -
.../processors/query/h2/sql/GridSqlQuery.java | 183 ++++
.../query/h2/sql/GridSqlQueryParser.java | 97 ++-
.../query/h2/sql/GridSqlQuerySplitter.java | 111 ++-
.../processors/query/h2/sql/GridSqlSelect.java | 209 ++---
.../query/h2/sql/GridSqlSubquery.java | 8 +-
.../processors/query/h2/sql/GridSqlUnion.java | 134 +++
.../h2/sql/AbstractH2CompareQueryTest.java | 341 ++++++++
.../query/h2/sql/BaseH2CompareQueryTest.java | 823 ++++++++++++++++++
.../query/h2/sql/GridQueryParsingTest.java | 26 +-
.../query/h2/sql/H2CompareBigQueryTest.java | 707 +++++++++++++++
.../query/h2/sql/IgniteVsH2QueryTest.java | 860 -------------------
.../IgniteCacheQuerySelfTestSuite.java | 5 +-
.../processors/query/h2/sql/bigQuery.sql | 55 ++
.../org/apache/ignite/IgniteSpringBean.java | 7 +
.../util/nodestart/IgniteNodeCallableImpl.java | 308 -------
.../util/nodestart/IgniteSshHelperImpl.java | 4 +-
.../util/nodestart/StartNodeCallableImpl.java | 309 +++++++
...gniteProjectionStartStopRestartSelfTest.java | 261 +++---
.../IgniteStartStopRestartTestSuite.java | 1 +
.../commands/start/VisorStartCommand.scala | 4 +-
59 files changed, 3636 insertions(+), 2472 deletions(-)
----------------------------------------------------------------------
[02/12] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/ignite-sprint-3' into ignite-694
Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-3' into ignite-694
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/93948ff1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/93948ff1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/93948ff1
Branch: refs/heads/ignite-sprint-3
Commit: 93948ff10d76dc4413e8eb4445da26fe5cfa8b33
Parents: db754ab 2444811
Author: sboikov <sb...@gridgain.com>
Authored: Tue Apr 7 17:22:07 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Tue Apr 7 17:22:07 2015 +0300
----------------------------------------------------------------------
.../eviction/fifo/GridCacheFifoBatchEvictionPolicySelfTest.java | 1 -
1 file changed, 1 deletion(-)
----------------------------------------------------------------------
[09/12] incubator-ignite git commit: Merge remote-tracking branch
'origin/ignite-694' into ignite-694
Posted by sb...@apache.org.
Merge remote-tracking branch 'origin/ignite-694' into ignite-694
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/32aa57c5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/32aa57c5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/32aa57c5
Branch: refs/heads/ignite-sprint-3
Commit: 32aa57c5875cc4bc07ef9b3bc3fa61a8985ea31d
Parents: 7908aea 7f7c829
Author: sboikov <sb...@gridgain.com>
Authored: Thu Apr 9 09:03:39 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Thu Apr 9 09:03:39 2015 +0300
----------------------------------------------------------------------
.../cache/distributed/dht/GridDhtAffinityAssignmentRequest.java | 5 +++++
.../distributed/dht/GridDhtAffinityAssignmentResponse.java | 5 +++++
2 files changed, 10 insertions(+)
----------------------------------------------------------------------
[12/12] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/ignite-694' into ignite-sprint-3
Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-694' into ignite-sprint-3
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/8803e179
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/8803e179
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/8803e179
Branch: refs/heads/ignite-sprint-3
Commit: 8803e17981fac145c94780220eff18093376df9f
Parents: 5fcb072 998d1fa
Author: sboikov <sb...@gridgain.com>
Authored: Thu Apr 9 12:19:25 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Thu Apr 9 12:19:25 2015 +0300
----------------------------------------------------------------------
.../processors/cache/GridCacheIoManager.java | 87 +++++++-----
.../processors/cache/GridCacheMessage.java | 7 +
.../GridCachePartitionExchangeManager.java | 136 ++++++++++++++++++-
.../dht/GridDhtAffinityAssignmentRequest.java | 5 +
.../dht/GridDhtAffinityAssignmentResponse.java | 5 +
.../GridDhtPartitionsAbstractMessage.java | 15 +-
.../IgniteCacheAtomicNodeJoinTest.java | 44 ++++++
.../IgniteCacheNodeJoinAbstractTest.java | 109 +++++++++++++++
.../distributed/IgniteCacheTxNodeJoinTest.java | 38 ++++++
.../IgniteCacheFailoverTestSuite.java | 4 +
10 files changed, 409 insertions(+), 41 deletions(-)
----------------------------------------------------------------------
[06/12] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/ignite-sprint-3' into ignite-694
Posted by sb...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-3' into ignite-694
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/8474a0a8
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/8474a0a8
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/8474a0a8
Branch: refs/heads/ignite-sprint-3
Commit: 8474a0a8d3f8ebd47049724700222d2322daa37d
Parents: 327a108 682dcd1
Author: sboikov <sb...@gridgain.com>
Authored: Wed Apr 8 12:16:39 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Wed Apr 8 12:16:39 2015 +0300
----------------------------------------------------------------------
.../src/main/java/org/apache/ignite/Ignite.java | 15 +
.../apache/ignite/internal/IgniteKernal.java | 37 ++
.../internal/managers/GridManagerAdapter.java | 34 +-
.../cache/DynamicCacheChangeRequest.java | 17 +
.../cache/DynamicCacheDescriptor.java | 17 +-
.../processors/cache/GridCacheProcessor.java | 349 +++++++++++++++---
.../GridDhtPartitionsExchangeFuture.java | 1 +
...eCacheConfigurationTemplateNotFoundTest.java | 114 ++++++
.../IgniteCacheConfigurationTemplateTest.java | 364 +++++++++++++++++++
.../ignite/testframework/junits/IgniteMock.java | 10 +
.../ignite/testsuites/IgniteCacheTestSuite.java | 2 +
.../org/apache/ignite/IgniteSpringBean.java | 14 +
.../commands/cache/VisorCacheClearCommand.scala | 3 +-
.../scala/org/apache/ignite/visor/visor.scala | 12 +-
14 files changed, 927 insertions(+), 62 deletions(-)
----------------------------------------------------------------------
[11/12] incubator-ignite git commit: # ignite-694
Posted by sb...@apache.org.
# ignite-694
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/998d1fa4
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/998d1fa4
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/998d1fa4
Branch: refs/heads/ignite-sprint-3
Commit: 998d1fa4e2f5515ed7f008ac2f866ce0178638cd
Parents: 9eb3fce
Author: sboikov <sb...@gridgain.com>
Authored: Thu Apr 9 10:41:27 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Thu Apr 9 10:41:27 2015 +0300
----------------------------------------------------------------------
.../processors/cache/GridCachePartitionExchangeManager.java | 3 +++
1 file changed, 3 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/998d1fa4/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
index 0955328..7a1324f 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
@@ -796,6 +796,9 @@ public class GridCachePartitionExchangeManager<K, V> extends GridCacheSharedMana
GridCacheContext<K, V> cacheCtx = cctx.cacheContext(cacheId);
+ if (cacheCtx != null && !cacheCtx.started())
+ continue; // Can safely ignore background exchange.
+
GridDhtPartitionTopology top = null;
if (cacheCtx == null)