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 2017/02/03 14:47:13 UTC
[1/6] ignite git commit: ignite-db-x small fix,
add print more info for investigation
Repository: ignite
Updated Branches:
refs/heads/ignite-3477 bac9b690e -> 1f86c05be
ignite-db-x small fix, add print more info for investigation
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/16f64d1f
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/16f64d1f
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/16f64d1f
Branch: refs/heads/ignite-3477
Commit: 16f64d1feadbfe7ced01c6f989a58aa6ddfa6523
Parents: f2f5dc9
Author: Dmitriy Govorukhin <dg...@gridgain.com>
Authored: Thu Feb 2 12:04:26 2017 +0300
Committer: Dmitriy Govorukhin <dg...@gridgain.com>
Committed: Thu Feb 2 12:04:26 2017 +0300
----------------------------------------------------------------------
.../distributed/dht/preloader/GridDhtPartitionDemander.java | 1 -
.../cache/query/continuous/CacheContinuousQueryHandler.java | 2 ++
.../java/org/apache/ignite/internal/util/IgniteUtils.java | 3 +++
.../rebalancing/GridCacheRebalancingSyncSelfTest.java | 8 ++++----
.../processors/continuous/GridEventConsumeSelfTest.java | 3 ++-
5 files changed, 11 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/16f64d1f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
index 04a9d1a..6bd218b 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionDemander.java
@@ -513,7 +513,6 @@ public class GridDhtPartitionDemander {
// New requests will not be covered by failovers.
cctx.io().sendOrderedMessage(node,
rebalanceTopics.get(cnt), initD, cctx.ioPolicy(), initD.timeout());
-
}
if (log.isDebugEnabled())
http://git-wip-us.apache.org/repos/asf/ignite/blob/16f64d1f/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java
index ea5551d..41eec6a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/query/continuous/CacheContinuousQueryHandler.java
@@ -448,6 +448,8 @@ public class CacheContinuousQueryHandler<K, V> implements GridContinuousHandler
}
@Override public void flushBackupQueue(GridKernalContext ctx, AffinityTopologyVersion topVer) {
+ assert topVer != null;
+
Collection<CacheContinuousQueryEntry> backupQueue0 = backupQueue;
if (backupQueue0 == null)
http://git-wip-us.apache.org/repos/asf/ignite/blob/16f64d1f/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
index 1be9f75..389d058 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java
@@ -7586,6 +7586,9 @@ public abstract class IgniteUtils {
return fut.get();
}
catch (ExecutionException e) {
+ //todo only for investigation
+ e.printStackTrace();
+
throw new IgniteCheckedException(e.getCause());
}
catch (InterruptedException e) {
http://git-wip-us.apache.org/repos/asf/ignite/blob/16f64d1f/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncSelfTest.java
index 3dfcd85..f875b75 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/rebalancing/GridCacheRebalancingSyncSelfTest.java
@@ -240,7 +240,7 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
waitForRebalancing(0, new AffinityTopologyVersion(2, waitMinorVer));
waitForRebalancing(1, new AffinityTopologyVersion(2, waitMinorVer));
- awaitPartitionMapExchange(true, true, null);
+ awaitPartitionMapExchange(true, true, null, true);
checkPartitionMapExchangeFinished();
@@ -250,7 +250,7 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
waitForRebalancing(1, 3);
- awaitPartitionMapExchange(true, true, null);
+ awaitPartitionMapExchange(true, true, null, true);
checkPartitionMapExchangeFinished();
@@ -261,7 +261,7 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
waitForRebalancing(1, new AffinityTopologyVersion(4, waitMinorVer));
waitForRebalancing(2, new AffinityTopologyVersion(4, waitMinorVer));
- awaitPartitionMapExchange(true, true, null);
+ awaitPartitionMapExchange(true, true, null, true);
checkPartitionMapExchangeFinished();
@@ -271,7 +271,7 @@ public class GridCacheRebalancingSyncSelfTest extends GridCommonAbstractTest {
waitForRebalancing(1, 5);
- awaitPartitionMapExchange(true, true, null);
+ awaitPartitionMapExchange(true, true, null, true);
checkPartitionMapExchangeFinished();
http://git-wip-us.apache.org/repos/asf/ignite/blob/16f64d1f/modules/core/src/test/java/org/apache/ignite/internal/processors/continuous/GridEventConsumeSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/continuous/GridEventConsumeSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/continuous/GridEventConsumeSelfTest.java
index 91eecbb..d2abf11 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/continuous/GridEventConsumeSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/continuous/GridEventConsumeSelfTest.java
@@ -24,6 +24,7 @@ import java.util.Random;
import java.util.UUID;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.Callable;
+import java.util.concurrent.ConcurrentSkipListSet;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.atomic.AtomicBoolean;
@@ -423,7 +424,7 @@ public class GridEventConsumeSelfTest extends GridCommonAbstractTest {
* @throws Exception If failed.
*/
public void testRemoteProjection() throws Exception {
- final Collection<UUID> nodeIds = new HashSet<>();
+ final Collection<UUID> nodeIds = new ConcurrentSkipListSet<>();
final AtomicInteger cnt = new AtomicInteger();
final CountDownLatch latch = new CountDownLatch(GRID_CNT - 1);
[2/6] ignite git commit: ignite-db-x fix
IgniteCachePartitionLossPolicySelfTest, batch reset partition
Posted by ag...@apache.org.
ignite-db-x fix IgniteCachePartitionLossPolicySelfTest, batch reset partition
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/a70dc00e
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/a70dc00e
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/a70dc00e
Branch: refs/heads/ignite-3477
Commit: a70dc00e1b699a9ad2959dd127241ec4371c0a1c
Parents: 16f64d1
Author: Dmitriy Govorukhin <dg...@gridgain.com>
Authored: Thu Feb 2 18:26:45 2017 +0300
Committer: Dmitriy Govorukhin <dg...@gridgain.com>
Committed: Thu Feb 2 18:26:45 2017 +0300
----------------------------------------------------------------------
.../src/main/java/org/apache/ignite/Ignite.java | 5 +++
.../java/org/apache/ignite/IgniteCache.java | 6 ---
.../apache/ignite/internal/IgniteKernal.java | 15 +++++++
.../processors/cache/GridCacheProcessor.java | 44 +++++++++++++++-----
.../processors/cache/IgniteCacheProxy.java | 26 ------------
.../GridDhtPartitionsExchangeFuture.java | 41 +++++++++++-------
.../IgniteCachePartitionLossPolicySelfTest.java | 14 +++----
.../processors/igfs/IgfsIgniteMock.java | 5 +++
.../ignite/testframework/junits/IgniteMock.java | 5 +++
.../multijvm/IgniteCacheProcessProxy.java | 5 ---
.../junits/multijvm/IgniteProcessProxy.java | 5 +++
11 files changed, 102 insertions(+), 69 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/a70dc00e/modules/core/src/main/java/org/apache/ignite/Ignite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/Ignite.java b/modules/core/src/main/java/org/apache/ignite/Ignite.java
index 54512a3..408a797 100644
--- a/modules/core/src/main/java/org/apache/ignite/Ignite.java
+++ b/modules/core/src/main/java/org/apache/ignite/Ignite.java
@@ -612,4 +612,9 @@ public interface Ignite extends AutoCloseable {
* @param active If {@code True} start activation process. If {@code False} start deactivation process.
*/
public void active(boolean active);
+
+ /**
+ * Clears partition's lost state and moves caches to a normal mode.
+ */
+ public void resetLostPartitions(Collection<String> cacheNames);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/a70dc00e/modules/core/src/main/java/org/apache/ignite/IgniteCache.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/IgniteCache.java b/modules/core/src/main/java/org/apache/ignite/IgniteCache.java
index eca61ab..412e08d 100644
--- a/modules/core/src/main/java/org/apache/ignite/IgniteCache.java
+++ b/modules/core/src/main/java/org/apache/ignite/IgniteCache.java
@@ -933,10 +933,4 @@ public interface IgniteCache<K, V> extends javax.cache.Cache<K, V>, IgniteAsyncS
* @return Lost paritions.
*/
public Collection<Integer> lostPartitions();
-
- /**
- * Clears partition's lost state and moves cache to a normal mode.
- */
- @IgniteAsyncSupported
- public void resetLostPartitions();
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/a70dc00e/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
index c11b770..ad10f7e 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
@@ -3226,6 +3226,21 @@ public class IgniteKernal implements IgniteEx, IgniteMXBean, Externalizable {
}
/** {@inheritDoc} */
+ @Override public void resetLostPartitions(Collection<String> cacheNames) {
+ guard();
+
+ try {
+ ctx.cache().resetCacheState(cacheNames).get();
+ }
+ catch (IgniteCheckedException e) {
+ throw U.convertException(e);
+ }
+ finally {
+ unguard();
+ }
+ }
+
+ /** {@inheritDoc} */
@Nullable @Override public IgniteAtomicSequence atomicSequence(String name, long initVal, boolean create) {
guard();
http://git-wip-us.apache.org/repos/asf/ignite/blob/a70dc00e/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
index 57b0d84..542a18c 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
@@ -2570,22 +2570,43 @@ public class GridCacheProcessor extends GridProcessorAdapter {
/**
* Resets cache state after the cache has been moved to recovery state.
*
- * @param cacheName Cache name.
- * @return Future that will be completed when state is changed.
+ * @param cacheNames Cache names.
+ * @return Future that will be completed when state is changed for all caches.
*/
- public IgniteInternalFuture<?> resetCacheState(String cacheName) {
- IgniteCacheProxy<?, ?> proxy = jCacheProxies.get(maskNull(cacheName));
+ public IgniteInternalFuture<?> resetCacheState(Collection<String> cacheNames) {
+ checkEmptyTransactions();
- if (proxy == null || proxy.proxyClosed())
- return new GridFinishedFuture<>(); // No-op.
+ if (F.isEmpty(cacheNames))
+ cacheNames = registeredCaches.keySet();
- checkEmptyTransactions();
+ Collection<DynamicCacheChangeRequest> reqs = new ArrayList<>(cacheNames.size());
- DynamicCacheChangeRequest t = new DynamicCacheChangeRequest(UUID.randomUUID(), cacheName, ctx.localNodeId());
+ for (String cacheName : cacheNames) {
+ DynamicCacheDescriptor desc = registeredCaches.get(cacheName);
- t.markResetLostPartitions();
+ if (desc == null) {
+ log.warning("Reset lost partition will not be executed, " +
+ "because cache with name:" + cacheName + " doesn't not exist");
- return F.first(initiateCacheChanges(F.asList(t), false));
+ continue;
+ }
+
+ DynamicCacheChangeRequest req = new DynamicCacheChangeRequest(
+ UUID.randomUUID(), cacheName, ctx.localNodeId());
+
+ req.markResetLostPartitions();
+
+ reqs.add(req);
+ }
+
+ GridCompoundFuture fut = new GridCompoundFuture();
+
+ for (DynamicCacheStartFuture f : initiateCacheChanges(reqs, false))
+ fut.add(f);
+
+ fut.markInitialized();
+
+ return fut;
}
/**
@@ -2690,7 +2711,8 @@ public class GridCacheProcessor extends GridProcessorAdapter {
*/
@SuppressWarnings("TypeMayBeWeakened")
private Collection<DynamicCacheStartFuture> initiateCacheChanges(
- Collection<DynamicCacheChangeRequest> reqs, boolean failIfExists
+ Collection<DynamicCacheChangeRequest> reqs,
+ boolean failIfExists
) {
Collection<DynamicCacheStartFuture> res = new ArrayList<>(reqs.size());
http://git-wip-us.apache.org/repos/asf/ignite/blob/a70dc00e/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
index dd92309..03cbbf7 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/IgniteCacheProxy.java
@@ -2307,32 +2307,6 @@ public class IgniteCacheProxy<K, V> extends AsyncSupportAdapter<IgniteCache<K, V
}
/** {@inheritDoc} */
- @Override public void resetLostPartitions() {
- GridCacheGateway<K, V> gate = this.gate;
-
- CacheOperationContext prev = onEnter(gate, opCtx);
-
- try {
- IgniteInternalFuture<?> fut = ctx.kernalContext().cache().resetCacheState(getName());
-
- if (isAsync())
- setFuture(fut);
- else {
- try {
- fut.get();
- }
- catch (IgniteCheckedException e) {
- throw CU.convertToCacheException(e);
- }
- }
- }
- finally {
- onLeave(gate, prev);
- }
-
- }
-
- /** {@inheritDoc} */
@Override public void writeExternal(ObjectOutput out) throws IOException {
out.writeObject(ctx);
http://git-wip-us.apache.org/repos/asf/ignite/blob/a70dc00e/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
index 75fd3e2..af0085d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
@@ -1041,6 +1041,21 @@ public class GridDhtPartitionsExchangeFuture extends GridFutureAdapter<AffinityT
* @throws IgniteCheckedException If failed.
*/
private void sendLocalPartitions(ClusterNode node) throws IgniteCheckedException {
+ assert node != null;
+
+ // Reset lost partition before send local partition to coordinator.
+ if (!F.isEmpty(reqs)) {
+ Set<String> caches = new HashSet<>();
+
+ for (DynamicCacheChangeRequest req : reqs) {
+ if (req.resetLostPartitions())
+ caches.add(req.cacheName());
+ }
+
+ if (!F.isEmpty(caches))
+ resetLostPartitions(caches);
+ }
+
GridDhtPartitionsSingleMessage m = cctx.exchange().createPartitionsSingleMessage(
node, exchangeId(), clientOnlyExchange, true);
@@ -1141,17 +1156,10 @@ public class GridDhtPartitionsExchangeFuture extends GridFutureAdapter<AffinityT
}
}
- if (!F.isEmpty(reqs)) {
- for (DynamicCacheChangeRequest req : reqs) {
- if (req.resetLostPartitions()) {
- resetLostPartitions();
-
- break;
- }
- }
- }
-
- detectLostPartitions();
+ if (discoEvt.type() == EVT_NODE_LEFT ||
+ discoEvt.type() == EVT_NODE_FAILED ||
+ discoEvt.type() == EVT_NODE_JOINED)
+ detectLostPartitions();
Map<Integer, CacheValidation> m = new HashMap<>(cctx.cacheContexts().size());
@@ -1514,13 +1522,13 @@ public class GridDhtPartitionsExchangeFuture extends GridFutureAdapter<AffinityT
/**
*
*/
- private void resetLostPartitions() {
+ private void resetLostPartitions(Collection<String> cacheNames) {
synchronized (cctx.exchange().interruptLock()) {
if (Thread.currentThread().isInterrupted())
return;
for (GridCacheContext cacheCtx : cctx.cacheContexts()) {
- if (!cacheCtx.isLocal())
+ if (!cacheCtx.isLocal() && cacheNames.contains(cacheCtx.name()))
cacheCtx.topology().resetLostPartitions();
}
}
@@ -1551,12 +1559,17 @@ public class GridDhtPartitionsExchangeFuture extends GridFutureAdapter<AffinityT
DynamicCacheChangeBatch batch = (DynamicCacheChangeBatch)((DiscoveryCustomEvent)discoEvt)
.customMessage();
+ Set<String> caches = new HashSet<>();
+
for (DynamicCacheChangeRequest req : batch.requests()) {
if (req.resetLostPartitions())
- resetLostPartitions();
+ caches.add(req.cacheName());
else if (req.globalStateChange() && req.state() != ClusterState.INACTIVE)
assignPartitionsStates();
}
+
+ if (!F.isEmpty(caches))
+ resetLostPartitions(caches);
}
}
else if (discoEvt.type() == EVT_NODE_LEFT || discoEvt.type() == EVT_NODE_FAILED)
http://git-wip-us.apache.org/repos/asf/ignite/blob/a70dc00e/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCachePartitionLossPolicySelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCachePartitionLossPolicySelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCachePartitionLossPolicySelfTest.java
index 5951ba3..480dc20 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCachePartitionLossPolicySelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/IgniteCachePartitionLossPolicySelfTest.java
@@ -17,6 +17,12 @@
package org.apache.ignite.internal.processors.cache.distributed;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.UUID;
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.TimeUnit;
+import javax.cache.CacheException;
import org.apache.ignite.Ignite;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.cache.PartitionLossPolicy;
@@ -38,12 +44,6 @@ import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
import org.apache.ignite.util.TestTcpCommunicationSpi;
-import javax.cache.CacheException;
-import java.util.Collection;
-import java.util.UUID;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
-
import static org.apache.ignite.cache.CacheMode.PARTITIONED;
import static org.apache.ignite.cache.CacheWriteSynchronizationMode.FULL_SYNC;
@@ -200,7 +200,7 @@ public class IgniteCachePartitionLossPolicySelfTest extends GridCommonAbstractTe
for (Ignite ig : G.allGrids())
verifyCacheOps(canWrite, safe, part, ig);
- ignite(0).cache(CACHE_NAME).resetLostPartitions();
+ ignite(0).resetLostPartitions(Collections.singletonList(CACHE_NAME));
awaitPartitionMapExchange(true, true, null);
http://git-wip-us.apache.org/repos/asf/ignite/blob/a70dc00e/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsIgniteMock.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsIgniteMock.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsIgniteMock.java
index 027072b..2a522fa 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsIgniteMock.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/igfs/IgfsIgniteMock.java
@@ -523,6 +523,11 @@ public class IgfsIgniteMock implements IgniteEx {
throwUnsupported();
}
+ /** {@inheritDoc} */
+ @Override public void resetLostPartitions(Collection<String> cacheNames) {
+ throwUnsupported();
+ }
+
/**
* Throw {@link UnsupportedOperationException}.
*/
http://git-wip-us.apache.org/repos/asf/ignite/blob/a70dc00e/modules/core/src/test/java/org/apache/ignite/testframework/junits/IgniteMock.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/junits/IgniteMock.java b/modules/core/src/test/java/org/apache/ignite/testframework/junits/IgniteMock.java
index 772abcf..bf3f17e 100644
--- a/modules/core/src/test/java/org/apache/ignite/testframework/junits/IgniteMock.java
+++ b/modules/core/src/test/java/org/apache/ignite/testframework/junits/IgniteMock.java
@@ -431,6 +431,11 @@ public class IgniteMock implements Ignite {
// No-op.
}
+ /** {@inheritDoc} */
+ @Override public void resetLostPartitions(Collection<String> cacheNames) {
+ // No-op.
+ }
+
/**
* @param staticCfg Configuration.
*/
http://git-wip-us.apache.org/repos/asf/ignite/blob/a70dc00e/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteCacheProcessProxy.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteCacheProcessProxy.java b/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteCacheProcessProxy.java
index 1b1d14e..df60bf1 100644
--- a/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteCacheProcessProxy.java
+++ b/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteCacheProcessProxy.java
@@ -509,11 +509,6 @@ public class IgniteCacheProcessProxy<K, V> implements IgniteCache<K, V> {
throw new UnsupportedOperationException("Method should be supported.");
}
- /** {@inheritDoc} */
- @Override public void resetLostPartitions() {
- throw new UnsupportedOperationException("Method should be supported.");
- }
-
/**
*
*/
http://git-wip-us.apache.org/repos/asf/ignite/blob/a70dc00e/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteProcessProxy.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteProcessProxy.java b/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteProcessProxy.java
index 15a520a..05a72e3 100644
--- a/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteProcessProxy.java
+++ b/modules/core/src/test/java/org/apache/ignite/testframework/junits/multijvm/IgniteProcessProxy.java
@@ -624,6 +624,11 @@ public class IgniteProcessProxy implements IgniteEx {
}
/** {@inheritDoc} */
+ @Override public void resetLostPartitions(Collection<String> cacheNames) {
+ throw new UnsupportedOperationException("Operation isn't supported yet.");
+ }
+
+ /** {@inheritDoc} */
@Override public void close() throws IgniteException {
final CountDownLatch rmtNodeStoppedLatch = new CountDownLatch(1);
[4/6] ignite git commit: ignite-db-x fix testSimpleRebalancing
Posted by ag...@apache.org.
ignite-db-x fix testSimpleRebalancing
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/98b35ff3
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/98b35ff3
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/98b35ff3
Branch: refs/heads/ignite-3477
Commit: 98b35ff347d0245024ca52ea128c34bb7f9279bb
Parents: 8a6736e
Author: Dmitriy Govorukhin <dg...@gridgain.com>
Authored: Fri Feb 3 16:24:23 2017 +0300
Committer: Dmitriy Govorukhin <dg...@gridgain.com>
Committed: Fri Feb 3 16:24:23 2017 +0300
----------------------------------------------------------------------
.../dht/GridDhtPartitionTopologyImpl.java | 2 +-
.../junits/common/GridCommonAbstractTest.java | 52 ++++++++++++++------
2 files changed, 38 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/98b35ff3/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java
index 5be1d86..322bbe3 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtPartitionTopologyImpl.java
@@ -835,7 +835,7 @@ class GridDhtPartitionTopologyImpl implements GridDhtPartitionTopology {
for (int i = 0; i < locParts.length(); i++) {
GridDhtLocalPartition part = locParts.get(i);
- if (part != null)
+ if (part != null && part.state().active())
list.add(part);
}
return list;
http://git-wip-us.apache.org/repos/asf/ignite/blob/98b35ff3/modules/core/src/test/java/org/apache/ignite/testframework/junits/common/GridCommonAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/junits/common/GridCommonAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/testframework/junits/common/GridCommonAbstractTest.java
index 48189f7..80ee6b9 100644
--- a/modules/core/src/test/java/org/apache/ignite/testframework/junits/common/GridCommonAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/testframework/junits/common/GridCommonAbstractTest.java
@@ -707,17 +707,18 @@ public abstract class GridCommonAbstractTest extends GridAbstractTest {
/**
* @param c Cache proxy.
- *
- * Print partitionState for cache.
*/
protected void printPartitionState(IgniteCache<?, ?> c) {
- IgniteCacheProxy<?, ?> cache = (IgniteCacheProxy<?, ?>)c;
-
- CacheConfiguration cfg = cache.context().config();
-
- if (cfg == null)
- return;
+ printPartitionState(c.getConfiguration(CacheConfiguration.class).getName(),0);
+ }
+ /**
+ * @param cacheName Cache name.
+ * @param firstParts Count partition for print (will be print first count partition).
+ *
+ * Print partitionState for cache.
+ */
+ protected void printPartitionState(String cacheName, int firstParts) {
StringBuilder sb = new StringBuilder();
sb.append("----preload sync futures----\n");
@@ -725,7 +726,7 @@ public abstract class GridCommonAbstractTest extends GridAbstractTest {
for (Ignite ig : G.allGrids()) {
IgniteKernal k = ((IgniteKernal)ig);
- IgniteInternalFuture<?> syncFut = k.internalCache(cfg.getName())
+ IgniteInternalFuture<?> syncFut = k.internalCache(cacheName)
.preloader()
.syncFuture();
@@ -741,7 +742,7 @@ public abstract class GridCommonAbstractTest extends GridAbstractTest {
for (Ignite ig : G.allGrids()) {
IgniteKernal k = ((IgniteKernal)ig);
- IgniteInternalFuture<?> f = k.internalCache(cfg.getName())
+ IgniteInternalFuture<?> f = k.internalCache(cacheName)
.preloader()
.rebalanceFuture();
@@ -782,9 +783,26 @@ public abstract class GridCommonAbstractTest extends GridAbstractTest {
.append(" grid=").append(g0.name())
.append("\n");
- GridDhtPartitionTopology top = dht(cache).topology();
+ IgniteCacheProxy<?, ?> cache = g0.context().cache().jcache(cacheName);
+
+ GridDhtCacheAdapter<?, ?> dht = dht(cache);
+
+ GridDhtPartitionTopology top = dht.topology();
+
+ int parts = firstParts == 0 ? cache.context()
+ .config()
+ .getAffinity()
+ .partitions() : firstParts;
+
+ for (int p = 0; p < parts; p++) {
+ AffinityTopologyVersion readyVer = dht.context().shared().exchange().readyAffinityVersion();
+
+ Collection<UUID> affNodes = F.nodeIds(dht.context()
+ .affinity()
+ .assignment(readyVer)
+ .idealAssignment()
+ .get(p));
- for (int p = 0; p < cfg.getAffinity().partitions(); p++) {
GridDhtLocalPartition part = top.localPartition(p, AffinityTopologyVersion.NONE, false);
sb.append("local part=");
@@ -794,16 +812,20 @@ public abstract class GridCommonAbstractTest extends GridAbstractTest {
else
sb.append(p).append(" is null");
- sb.append("\n");
+ sb.append(" isAffNode=")
+ .append(affNodes.contains(g0.localNode().id()))
+ .append("\n");
for (UUID nodeId : F.nodeIds(g0.context().discovery().allNodes())) {
if (!nodeId.equals(g0.localNode().id()))
- sb.append(" nodeId = ")
+ sb.append(" nodeId=")
.append(nodeId)
.append(" part=")
.append(p)
.append(" state=")
.append(top.partitionState(nodeId, p))
+ .append(" isAffNode=")
+ .append(affNodes.contains(nodeId))
.append("\n");
}
}
@@ -811,7 +833,7 @@ public abstract class GridCommonAbstractTest extends GridAbstractTest {
sb.append("\n");
}
- log.info("dump partitions state for <" + cfg.getName() + ">:\n" + sb.toString());
+ log.info("dump partitions state for <" + cacheName + ">:\n" + sb.toString());
}
/**
[5/6] ignite git commit: ignite-db-x update odbc test
Posted by ag...@apache.org.
ignite-db-x update odbc test
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/11247230
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/11247230
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/11247230
Branch: refs/heads/ignite-3477
Commit: 112472304501ab2b4ae91b92ee134ffd7cabc113
Parents: 98b35ff
Author: Dmitriy Govorukhin <dg...@gridgain.com>
Authored: Fri Feb 3 16:40:19 2017 +0300
Committer: Dmitriy Govorukhin <dg...@gridgain.com>
Committed: Fri Feb 3 16:40:19 2017 +0300
----------------------------------------------------------------------
.../processors/odbc/OdbcProcessorValidationSelfTest.java | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/11247230/modules/core/src/test/java/org/apache/ignite/internal/processors/odbc/OdbcProcessorValidationSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/odbc/OdbcProcessorValidationSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/odbc/OdbcProcessorValidationSelfTest.java
index 2cf0c8f..694fe65 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/odbc/OdbcProcessorValidationSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/odbc/OdbcProcessorValidationSelfTest.java
@@ -167,11 +167,11 @@ public class OdbcProcessorValidationSelfTest extends GridCommonAbstractTest {
cfg.setDiscoverySpi(spi);
if (success)
- Ignition.start(cfg);
+ startGrid(cfg.getGridName(), cfg);
else {
GridTestUtils.assertThrows(log, new Callable<Void>() {
@Override public Void call() throws Exception {
- Ignition.start(cfg);
+ startGrid(cfg.getGridName(), cfg);
return null;
}
[6/6] ignite git commit: Merge branch 'ignite-db-x' of
https://github.com/gridgain/apache-ignite into ignite-db-x
Posted by ag...@apache.org.
Merge branch 'ignite-db-x' of https://github.com/gridgain/apache-ignite into ignite-db-x
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/1f86c05b
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/1f86c05b
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/1f86c05b
Branch: refs/heads/ignite-3477
Commit: 1f86c05be9ed6db1b1ea1b3de021a6c782fab0be
Parents: bac9b69 1124723
Author: Alexey Goncharuk <al...@gmail.com>
Authored: Fri Feb 3 17:46:41 2017 +0300
Committer: Alexey Goncharuk <al...@gmail.com>
Committed: Fri Feb 3 17:46:41 2017 +0300
----------------------------------------------------------------------
.../src/main/java/org/apache/ignite/Ignite.java | 5 ++
.../java/org/apache/ignite/IgniteCache.java | 6 ---
.../apache/ignite/internal/IgniteKernal.java | 15 ++++++
.../processors/cache/GridCacheProcessor.java | 44 ++++++++++++-----
.../processors/cache/IgniteCacheProxy.java | 26 ----------
.../dht/GridDhtPartitionTopologyImpl.java | 2 +-
.../dht/preloader/GridDhtPartitionDemander.java | 1 -
.../GridDhtPartitionsExchangeFuture.java | 41 +++++++++------
.../continuous/CacheContinuousQueryHandler.java | 2 +
.../ignite/internal/util/IgniteUtils.java | 3 ++
.../IgniteCachePartitionLossPolicySelfTest.java | 14 +++---
.../GridCacheRebalancingSyncSelfTest.java | 8 +--
.../continuous/GridEventConsumeSelfTest.java | 3 +-
.../processors/igfs/IgfsIgniteMock.java | 5 ++
.../odbc/OdbcProcessorValidationSelfTest.java | 4 +-
.../ignite/testframework/junits/IgniteMock.java | 5 ++
.../junits/common/GridCommonAbstractTest.java | 52 ++++++++++++++------
.../multijvm/IgniteCacheProcessProxy.java | 5 --
.../junits/multijvm/IgniteProcessProxy.java | 5 ++
.../org/apache/ignite/IgniteSpringBean.java | 7 +++
20 files changed, 160 insertions(+), 93 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/1f86c05b/modules/core/src/main/java/org/apache/ignite/internal/IgniteKernal.java
----------------------------------------------------------------------
[3/6] ignite git commit: ignite-db-x compile err fix
resetLostPartitions
Posted by ag...@apache.org.
ignite-db-x compile err fix resetLostPartitions
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/8a6736e6
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/8a6736e6
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/8a6736e6
Branch: refs/heads/ignite-3477
Commit: 8a6736e64dd42917cf385e45043e536e53841278
Parents: a70dc00
Author: Dmitriy Govorukhin <dg...@gridgain.com>
Authored: Fri Feb 3 13:53:13 2017 +0300
Committer: Dmitriy Govorukhin <dg...@gridgain.com>
Committed: Fri Feb 3 13:53:13 2017 +0300
----------------------------------------------------------------------
.../ignite/internal/processors/cache/GridCacheProcessor.java | 2 +-
.../src/main/java/org/apache/ignite/IgniteSpringBean.java | 7 +++++++
2 files changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/8a6736e6/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
index 542a18c..987d696 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheProcessor.java
@@ -2582,7 +2582,7 @@ public class GridCacheProcessor extends GridProcessorAdapter {
Collection<DynamicCacheChangeRequest> reqs = new ArrayList<>(cacheNames.size());
for (String cacheName : cacheNames) {
- DynamicCacheDescriptor desc = registeredCaches.get(cacheName);
+ DynamicCacheDescriptor desc = registeredCaches.get(maskNull(cacheName));
if (desc == null) {
log.warning("Reset lost partition will not be executed, " +
http://git-wip-us.apache.org/repos/asf/ignite/blob/8a6736e6/modules/spring/src/main/java/org/apache/ignite/IgniteSpringBean.java
----------------------------------------------------------------------
diff --git a/modules/spring/src/main/java/org/apache/ignite/IgniteSpringBean.java b/modules/spring/src/main/java/org/apache/ignite/IgniteSpringBean.java
index c5c1ad1..fc45a25 100644
--- a/modules/spring/src/main/java/org/apache/ignite/IgniteSpringBean.java
+++ b/modules/spring/src/main/java/org/apache/ignite/IgniteSpringBean.java
@@ -265,6 +265,13 @@ public class IgniteSpringBean implements Ignite, DisposableBean, InitializingBea
}
/** {@inheritDoc} */
+ @Override public void resetLostPartitions(Collection<String> cacheNames) {
+ checkIgnite();
+
+ g.resetLostPartitions(cacheNames);
+ }
+
+ /** {@inheritDoc} */
@Override public <K, V> IgniteCache<K, V> cache(@Nullable String name) {
checkIgnite();