You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by iv...@apache.org on 2015/07/20 17:05:17 UTC
[01/23] incubator-ignite git commit: #ignite-1086: fix
TcpDiscoveryNode consistentId + test.
Repository: incubator-ignite
Updated Branches:
refs/heads/ignite-1087 [created] 3208e6f68
#ignite-1086: fix TcpDiscoveryNode consistentId + test.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/d8f5b6f4
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/d8f5b6f4
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/d8f5b6f4
Branch: refs/heads/ignite-1087
Commit: d8f5b6f44c6672b7b3db7ba75666dd4979d30c3c
Parents: ea90d86
Author: ivasilinets <iv...@gridgain.com>
Authored: Fri Jul 3 12:05:42 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Fri Jul 3 12:05:42 2015 +0300
----------------------------------------------------------------------
.../ignite/internal/util/IgniteUtils.java | 6 +-
.../TcpDiscoveryNodeConsistentIdSelfTest.java | 68 ++++++++++++++++++++
.../IgniteSpiDiscoverySelfTestSuite.java | 2 +
3 files changed, 75 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d8f5b6f4/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 f457d6c..46a23d6 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
@@ -8048,9 +8048,13 @@ public abstract class IgniteUtils {
public static String consistentId(Collection<String> addrs, int port) {
assert !F.isEmpty(addrs);
+ List<String> sortedAddrs = new ArrayList<>(addrs);
+
+ Collections.sort(sortedAddrs);
+
StringBuilder sb = new StringBuilder();
- for (String addr : addrs)
+ for (String addr : sortedAddrs)
sb.append(addr).append(',');
sb.delete(sb.length() - 1, sb.length());
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d8f5b6f4/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryNodeConsistentIdSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryNodeConsistentIdSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryNodeConsistentIdSelfTest.java
new file mode 100644
index 0000000..411e85d
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryNodeConsistentIdSelfTest.java
@@ -0,0 +1,68 @@
+/*
+ * 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.spi.discovery.tcp;
+
+import org.apache.ignite.configuration.*;
+import org.apache.ignite.spi.discovery.tcp.internal.*;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.*;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.*;
+import org.apache.ignite.testframework.junits.common.*;
+
+/**
+ * Test for {@link TcpDiscoveryNode#consistentId()}
+ */
+public class TcpDiscoveryNodeConsistentIdSelfTest extends GridCommonAbstractTest {
+ /** IP finder. */
+ private TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+
+ /** {@inheritDoc} */
+ @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
+ IgniteConfiguration cfg = super.getConfiguration(gridName);
+
+ cfg.setLocalHost("0.0.0.0");
+
+ cfg.setDiscoverySpi(new TcpDiscoverySpi().setIpFinder(ipFinder));
+
+ return cfg;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void beforeTest() throws Exception {
+ startGrids(2);
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void afterTest() throws Exception {
+ stopAllGrids();
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testConsistentId() throws Exception {
+ Object id0 = grid(0).localNode().consistentId();
+ Object id1 = grid(1).localNode().consistentId();
+
+ stopAllGrids();
+
+ startGrids(2);
+
+ assertEquals(id0, grid(0).localNode().consistentId());
+ assertEquals(id1, grid(1).localNode().consistentId());
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d8f5b6f4/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteSpiDiscoverySelfTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteSpiDiscoverySelfTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteSpiDiscoverySelfTestSuite.java
index ea5a7ac..498f50c 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteSpiDiscoverySelfTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteSpiDiscoverySelfTestSuite.java
@@ -55,6 +55,8 @@ public class IgniteSpiDiscoverySelfTestSuite extends TestSuite {
suite.addTest(new TestSuite(TcpClientDiscoveryMarshallerCheckSelfTest.class));
suite.addTest(new TestSuite(TcpClientDiscoverySpiMulticastTest.class));
+ suite.addTest(new TestSuite(TcpDiscoveryNodeConsistentIdSelfTest.class));
+
return suite;
}
}
[17/23] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/master' into ignite-1087
Posted by iv...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-1087
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/fc793cdc
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/fc793cdc
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/fc793cdc
Branch: refs/heads/ignite-1087
Commit: fc793cdcee86f205c5b4f86a943a6845e7a1bcb0
Parents: b2770d5 aa2d7cb
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jul 13 14:59:15 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jul 13 14:59:15 2015 +0300
----------------------------------------------------------------------
modules/core/pom.xml | 7 +
.../affinity/fair/FairAffinityFunction.java | 5 +-
.../configuration/CacheConfiguration.java | 2 +-
.../ignite/internal/util/IgniteUtils.java | 6 +-
.../tcp/internal/TcpDiscoveryNode.java | 8 +-
.../META-INF/classnames-jdk.properties | 3 +
.../cache/GridCacheAbstractFullApiSelfTest.java | 323 ++++++----
.../cache/GridCacheAbstractSelfTest.java | 14 +-
...eAtomicNearOnlyMultiNodeFullApiSelfTest.java | 3 +
...idCacheNearOnlyMultiNodeFullApiSelfTest.java | 5 +-
.../near/GridCacheNearTxMultiNodeSelfTest.java | 10 +-
...achePartitionedMultiNodeFullApiSelfTest.java | 48 +-
...OnlyFairAffinityMultiJvmFullApiSelfTest.java | 31 +
...AtomicClientOnlyMultiJvmFullApiSelfTest.java | 31 +
...tOnlyMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...pyOnReadDisabledMultiJvmFullApiSelfTest.java | 31 +
...omicFairAffinityMultiJvmFullApiSelfTest.java | 31 +
.../GridCacheAtomicMultiJvmFullApiSelfTest.java | 30 +
...tomicMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...bledFairAffinityMultiJvmFullApiSelfTest.java | 31 +
...tomicNearEnabledMultiJvmFullApiSelfTest.java | 31 +
...rimaryWriteOrderMultiJvmFullApiSelfTest.java | 31 +
...heAtomicNearOnlyMultiJvmFullApiSelfTest.java | 31 +
...rOnlyMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...cheAtomicOffHeapMultiJvmFullApiSelfTest.java | 31 +
...micOffHeapTieredMultiJvmFullApiSelfTest.java | 36 ++
...rderFairAffinityMultiJvmFullApiSelfTest.java | 31 +
...rimaryWriteOrderMultiJvmFullApiSelfTest.java | 31 +
...OrderMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...rityOrderOffHeapMultiJvmFullApiSelfTest.java | 31 +
...derOffHeapTieredMultiJvmFullApiSelfTest.java | 36 ++
...OnlyFairAffinityMultiJvmFullApiSelfTest.java | 31 +
...ridCacheNearOnlyMultiJvmFullApiSelfTest.java | 30 +
...rOnlyMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...pyOnReadDisabledMultiJvmFullApiSelfTest.java | 31 +
...onedFairAffinityMultiJvmFullApiSelfTest.java | 31 +
...CachePartitionedMultiJvmFullApiSelfTest.java | 30 +
...ionedMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...micOffHeapTieredMultiJvmFullApiSelfTest.java | 36 ++
...bledFairAffinityMultiJvmFullApiSelfTest.java | 31 +
...onedNearDisabledMultiJvmFullApiSelfTest.java | 31 +
...abledMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...rDisabledOffHeapMultiJvmFullApiSelfTest.java | 31 +
...ledOffHeapTieredMultiJvmFullApiSelfTest.java | 36 ++
...rtitionedOffHeapMultiJvmFullApiSelfTest.java | 31 +
...nedOffHeapTieredMultiJvmFullApiSelfTest.java | 36 ++
...ReplicatedAtomicMultiJvmFullApiSelfTest.java | 31 +
...rimaryWriteOrderMultiJvmFullApiSelfTest.java | 31 +
...dCacheReplicatedMultiJvmFullApiSelfTest.java | 30 +
...catedMultiJvmP2PDisabledFullApiSelfTest.java | 31 +
...plicatedNearOnlyMultiJvmFullApiSelfTest.java | 37 ++
...eplicatedOffHeapMultiJvmFullApiSelfTest.java | 31 +
...tedOffHeapTieredMultiJvmFullApiSelfTest.java | 36 ++
.../GridCommandLineTransformerSelfTest.java | 12 +-
.../testframework/junits/GridAbstractTest.java | 380 +++++++++++-
.../junits/common/GridCommonAbstractTest.java | 50 +-
.../junits/multijvm/AffinityProcessProxy.java | 195 ++++++
.../multijvm/IgniteCacheProcessProxy.java | 602 +++++++++++++++++++
.../multijvm/IgniteClusterProcessProxy.java | 320 ++++++++++
.../multijvm/IgniteEventsProcessProxy.java | 148 +++++
.../junits/multijvm/IgniteNodeRunner.java | 184 ++++++
.../junits/multijvm/IgniteProcessProxy.java | 571 ++++++++++++++++++
...IgniteCacheFullApiMultiJvmSelfTestSuite.java | 89 +++
parent/pom.xml | 40 ++
pom.xml | 1 -
65 files changed, 4111 insertions(+), 218 deletions(-)
----------------------------------------------------------------------
[09/23] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/master' into ignite-1087
Posted by iv...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-1087
Conflicts:
modules/core/src/test/java/org/apache/ignite/testsuites/IgniteSpiDiscoverySelfTestSuite.java
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/585043d9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/585043d9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/585043d9
Branch: refs/heads/ignite-1087
Commit: 585043d9de5c3083b04513844f18671b4eb7d03d
Parents: 18e4de6 c134dcf
Author: ivasilinets <iv...@gridgain.com>
Authored: Thu Jul 9 14:44:33 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Thu Jul 9 14:44:33 2015 +0300
----------------------------------------------------------------------
RELEASE_NOTES.txt | 12 ++
dev-tools/slurp.sh | 2 +-
modules/core/pom.xml | 4 +-
.../src/main/java/org/apache/ignite/Ignite.java | 2 +-
.../cache/eviction/fifo/FifoEvictionPolicy.java | 5 -
.../cache/eviction/lru/LruEvictionPolicy.java | 5 -
.../eviction/sorted/SortedEvictionPolicy.java | 19 +-
.../configuration/CacheConfiguration.java | 4 +
.../configuration/TransactionConfiguration.java | 23 +++
.../apache/ignite/internal/IgniteKernal.java | 32 +--
.../internal/interop/InteropIgnition.java | 48 +++--
.../internal/interop/InteropProcessor.java | 7 +
.../processors/cache/CacheObjectImpl.java | 1 -
.../processors/cache/GridCacheAttributes.java | 3 +
.../processors/cache/GridCacheContext.java | 8 +-
.../processors/cache/GridCacheIoManager.java | 8 +-
.../processors/cache/GridCacheProcessor.java | 118 ++++-------
.../cache/GridCacheSharedContext.java | 15 +-
.../dht/GridPartitionedGetFuture.java | 13 +-
.../distributed/near/GridNearGetFuture.java | 4 +-
.../cache/jta/CacheJtaManagerAdapter.java | 17 +-
.../cache/jta/CacheNoopJtaManager.java | 2 +-
.../cache/query/GridCacheQueryAdapter.java | 35 +++-
.../continuous/CacheContinuousQueryHandler.java | 4 +-
.../datastructures/DataStructuresProcessor.java | 39 +++-
.../GridCacheCountDownLatchImpl.java | 15 +-
.../processors/query/GridQueryProcessor.java | 5 +
.../visor/cache/VisorCacheConfiguration.java | 11 -
.../ignite/spi/discovery/tcp/ServerImpl.java | 46 +++++
.../tcp/internal/TcpDiscoveryNode.java | 2 +-
.../tcp/internal/TcpDiscoveryNodesRing.java | 8 +-
.../tcp/internal/TcpDiscoveryStatistics.java | 10 +-
...cheStoreSessionListenerAbstractSelfTest.java | 1 -
.../cache/CacheFutureExceptionSelfTest.java | 158 +++++++++++++++
.../IgniteCacheConfigurationTemplateTest.java | 26 +--
.../cache/IgniteDynamicCacheStartSelfTest.java | 16 +-
.../IgniteDynamicClientCacheStartSelfTest.java | 5 +-
.../IgniteClientDataStructuresAbstractTest.java | 109 +++++++---
.../IgniteCountDownLatchAbstractSelfTest.java | 12 +-
.../GridCachePartitionedNodeRestartTest.java | 5 -
...ePartitionedOptimisticTxNodeRestartTest.java | 2 +-
.../GridCacheReplicatedFailoverSelfTest.java | 5 -
.../GridCacheReplicatedNodeRestartSelfTest.java | 5 -
...acheAtomicReplicatedNodeRestartSelfTest.java | 11 +-
...heConcurrentEvictionConsistencySelfTest.java | 15 +-
.../loadtests/hashmap/GridCacheTestContext.java | 4 +-
.../tcp/TcpDiscoveryMultiThreadedTest.java | 38 ++++
.../ignite/testsuites/IgniteCacheTestSuite.java | 1 +
.../IgniteSpiDiscoverySelfTestSuite.java | 3 +
.../HibernateTransactionalDataRegion.java | 12 +-
.../hibernate/HibernateL2CacheSelfTest.java | 7 +-
.../HibernateL2CacheTransactionalSelfTest.java | 5 -
.../CacheAbstractQueryMetricsSelfTest.java | 157 +++++++++++++-
.../cache/CacheLocalQueryMetricsSelfTest.java | 33 +++
...titionedQueryMetricsDistributedSelfTest.java | 33 +++
...chePartitionedQueryMetricsLocalSelfTest.java | 33 +++
.../CachePartitionedQueryMetricsSelfTest.java | 32 ---
...plicatedQueryMetricsDistributedSelfTest.java | 33 +++
...acheReplicatedQueryMetricsLocalSelfTest.java | 33 +++
.../CacheReplicatedQueryMetricsSelfTest.java | 32 ---
.../IgniteCacheQuerySelfTestSuite.java | 7 +-
.../apache/ignite/cache/jta/CacheTmLookup.java | 3 +-
.../processors/cache/jta/CacheJtaManager.java | 72 ++++++-
.../cache/jta/GridCacheXAResource.java | 16 +-
.../processors/cache/GridCacheJtaSelfTest.java | 52 +++--
.../GridTmLookupLifecycleAwareSelfTest.java | 29 ++-
modules/kafka/licenses/apache-2.0.txt | 202 +++++++++++++++++++
modules/kafka/pom.xml | 11 -
modules/mesos/pom.xml | 1 -
modules/rest-http/pom.xml | 14 +-
modules/urideploy/pom.xml | 8 +-
.../commands/cache/VisorCacheCommand.scala | 2 -
modules/web/pom.xml | 6 +-
.../config/benchmark-put-indexed-val.properties | 64 ++++++
modules/yardstick/config/ignite-base-config.xml | 23 +++
.../cache/IgnitePutIndexedValue1Benchmark.java | 42 ++++
.../cache/IgnitePutIndexedValue2Benchmark.java | 42 ++++
.../cache/IgnitePutIndexedValue8Benchmark.java | 42 ++++
.../ignite/yardstick/cache/model/Person1.java | 55 +++++
.../ignite/yardstick/cache/model/Person2.java | 67 ++++++
.../ignite/yardstick/cache/model/Person8.java | 109 ++++++++++
parent/pom.xml | 1 +
scripts/git-patch-prop.sh | 2 +-
83 files changed, 1786 insertions(+), 437 deletions(-)
----------------------------------------------------------------------
[19/23] incubator-ignite git commit: #ignite-1087: add tests.
Posted by iv...@apache.org.
#ignite-1087: add tests.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/14b58dbc
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/14b58dbc
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/14b58dbc
Branch: refs/heads/ignite-1087
Commit: 14b58dbc799885989b20e91868848de828df7972
Parents: 17b0fb7
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jul 13 16:31:33 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jul 13 16:31:33 2015 +0300
----------------------------------------------------------------------
.../cache/CacheAffinityCallSelfTest.java | 42 ++++++++++++++++++--
1 file changed, 39 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/14b58dbc/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
index a8a838e..2505eb9 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
@@ -1,6 +1,7 @@
package org.apache.ignite.internal.processors.cache;
import org.apache.ignite.*;
+import org.apache.ignite.cluster.*;
import org.apache.ignite.configuration.*;
import org.apache.ignite.internal.*;
import org.apache.ignite.internal.util.typedef.internal.*;
@@ -29,6 +30,9 @@ public class CacheAffinityCallSelfTest extends GridCommonAbstractTest {
private static final int MAX_FAILOVER_ATTEMPTS = 5;
/** */
+ private static final int SERVERS_COUNT = 4;
+
+ /** */
private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
/** {@inheritDoc} */
@@ -52,6 +56,9 @@ public class CacheAffinityCallSelfTest extends GridCommonAbstractTest {
cfg.setCacheConfiguration(ccfg);
+ if (gridName.equals(getTestGridName(SERVERS_COUNT)))
+ cfg.setClientMode(true);
+
return cfg;
}
@@ -84,6 +91,37 @@ public class CacheAffinityCallSelfTest extends GridCommonAbstractTest {
}
/**
+ * @throws Exception If failed.
+ */
+ public void testAffinityCallNoServerNode() throws Exception {
+ startGrids(SERVERS_COUNT + 1);
+
+ final Integer key = 1;
+
+ final Ignite client = grid(SERVERS_COUNT);
+
+ final IgniteInternalFuture<Object> fut = GridTestUtils.runAsync(new Callable<Object>() {
+ @Override public Object call() throws Exception {
+ for (int i = 0; i < SERVERS_COUNT; ++i)
+ stopGrid(i);
+
+ return null;
+ }
+ });
+
+ GridTestUtils.assertThrows(log, new Callable<Object>() {
+ @Override public Object call() throws Exception {
+ while (!fut.isDone())
+ client.compute().affinityCall(CACHE_NAME, key, new CheckCallable(key));
+
+ return null;
+ }
+ }, ClusterGroupEmptyException.class, "Topology projection is empty");
+
+ stopAllGrids();
+ }
+
+ /**
* Test callable.
*/
public static class CheckCallable implements IgniteCallable<Object> {
@@ -103,11 +141,9 @@ public class CacheAffinityCallSelfTest extends GridCommonAbstractTest {
/** {@inheritDoc} */
@Override public Object call() throws IgniteCheckedException {
- assert ignite.cluster().localNode().id().equals(ignite.cluster().mapKeyToNode(null, key).id());
+ assert ignite.cluster().localNode().id().equals(ignite.cluster().mapKeyToNode(CACHE_NAME, key).id());
return null;
}
}
-
-
}
[04/23] incubator-ignite git commit: Merge branch 'ignite-sprint-7'
into ignite-1086
Posted by iv...@apache.org.
Merge branch 'ignite-sprint-7' into ignite-1086
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/84233f2c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/84233f2c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/84233f2c
Branch: refs/heads/ignite-1087
Commit: 84233f2cbe7c4a9adf02aad981573c89dbef7324
Parents: d8f5b6f 334fee9
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jul 6 10:46:51 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jul 6 10:46:51 2015 +0300
----------------------------------------------------------------------
bin/ignite.bat | 8 +-
bin/ignite.sh | 6 +-
bin/include/parseargs.bat | 1 +
bin/include/parseargs.sh | 3 +
.../startup/cmdline/CommandLineStartup.java | 3 +-
.../startup/cmdline/CommandLineTransformer.java | 9 +
.../GridCachePartitionedFailoverSelfTest.java | 5 +
...acheAtomicReplicatedNodeRestartSelfTest.java | 5 +
modules/kafka/pom.xml | 116 ++++++
.../ignite/stream/kafka/KafkaStreamer.java | 220 +++++++++++
.../kafka/IgniteKafkaStreamerSelfTestSuite.java | 37 ++
.../stream/kafka/KafkaEmbeddedBroker.java | 378 +++++++++++++++++++
.../kafka/KafkaIgniteStreamerSelfTest.java | 227 +++++++++++
.../ignite/stream/kafka/SimplePartitioner.java | 53 +++
.../util/spring/IgniteSpringHelperImpl.java | 72 +++-
.../IgniteExcludeInConfigurationTest.java | 78 ++++
.../org/apache/ignite/spring/sprint-exclude.xml | 57 +++
.../testsuites/IgniteSpringTestSuite.java | 2 +
.../ignite/visor/commands/VisorConsole.scala | 3 +-
.../visor/commands/open/VisorOpenCommand.scala | 319 ++++++++++++++++
.../scala/org/apache/ignite/visor/visor.scala | 230 +----------
.../ignite/visor/VisorRuntimeBaseSpec.scala | 2 +
.../commands/kill/VisorKillCommandSpec.scala | 1 +
.../commands/start/VisorStartCommandSpec.scala | 1 +
.../commands/tasks/VisorTasksCommandSpec.scala | 1 +
.../commands/vvm/VisorVvmCommandSpec.scala | 1 +
pom.xml | 1 +
27 files changed, 1598 insertions(+), 241 deletions(-)
----------------------------------------------------------------------
[16/23] incubator-ignite git commit: # ignite-1087
Posted by iv...@apache.org.
# ignite-1087
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/b2770d55
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/b2770d55
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/b2770d55
Branch: refs/heads/ignite-1087
Commit: b2770d55d33b9b836030e73869875cc834ed100a
Parents: b50067c
Author: sboikov <sb...@gridgain.com>
Authored: Fri Jul 10 10:30:35 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Fri Jul 10 10:30:35 2015 +0300
----------------------------------------------------------------------
.../ignite/compute/ComputeJobResultPolicy.java | 3 +-
.../failover/GridFailoverContextImpl.java | 12 ++--
.../managers/failover/GridFailoverManager.java | 10 ++-
.../processors/closure/AffinityTask.java | 35 ++++++++++
.../closure/GridClosureProcessor.java | 71 ++++++++++++++++----
.../task/GridTaskThreadContextKey.java | 6 --
.../processors/task/GridTaskWorker.java | 20 ++++--
.../ignite/spi/failover/FailoverContext.java | 5 +-
.../spi/failover/always/AlwaysFailoverSpi.java | 4 +-
9 files changed, 127 insertions(+), 39 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b2770d55/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobResultPolicy.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobResultPolicy.java b/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobResultPolicy.java
index 37aba91..26eb542 100644
--- a/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobResultPolicy.java
+++ b/modules/core/src/main/java/org/apache/ignite/compute/ComputeJobResultPolicy.java
@@ -50,8 +50,7 @@ public enum ComputeJobResultPolicy {
* @param ord Ordinal value.
* @return Enumerated value.
*/
- @Nullable
- public static ComputeJobResultPolicy fromOrdinal(byte ord) {
+ @Nullable public static ComputeJobResultPolicy fromOrdinal(byte ord) {
return ord >= 0 && ord < VALS.length ? VALS[ord] : null;
}
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b2770d55/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java
index 0c1e7d8..c2b104e 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java
@@ -24,6 +24,7 @@ import org.apache.ignite.internal.managers.loadbalancer.*;
import org.apache.ignite.internal.util.tostring.*;
import org.apache.ignite.internal.util.typedef.internal.*;
import org.apache.ignite.spi.failover.*;
+import org.jetbrains.annotations.*;
import java.util.*;
@@ -56,8 +57,11 @@ public class GridFailoverContextImpl implements FailoverContext {
* @param affKey Affinity key.
* @param affCacheName Affinity cache name.
*/
- public GridFailoverContextImpl(GridTaskSessionImpl taskSes, ComputeJobResult jobRes,
- GridLoadBalancerManager loadMgr, Object affKey, String affCacheName) {
+ public GridFailoverContextImpl(GridTaskSessionImpl taskSes,
+ ComputeJobResult jobRes,
+ GridLoadBalancerManager loadMgr,
+ @Nullable Object affKey,
+ @Nullable String affCacheName) {
assert taskSes != null;
assert jobRes != null;
assert loadMgr != null;
@@ -85,12 +89,12 @@ public class GridFailoverContextImpl implements FailoverContext {
}
/** {@inheritDoc} */
- @Override public Object affinityKey() {
+ @Nullable @Override public Object affinityKey() {
return affKey;
}
/** {@inheritDoc} */
- @Override public String affinityCacheName() {
+ @Nullable @Override public String affinityCacheName() {
return affCacheName;
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b2770d55/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java
index 4102514..dffc965 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java
@@ -23,6 +23,7 @@ import org.apache.ignite.compute.*;
import org.apache.ignite.internal.*;
import org.apache.ignite.internal.managers.*;
import org.apache.ignite.spi.failover.*;
+import org.jetbrains.annotations.*;
import java.util.*;
@@ -56,13 +57,16 @@ public class GridFailoverManager extends GridManagerAdapter<FailoverSpi> {
/**
* @param taskSes Task session.
* @param jobRes Job result.
- * @param top Collection of all top nodes that does not include the failed node.
+ * @param top Collection of all topology nodes.
* @param affKey Affinity key.
* @param affCacheName Affinity cache name.
* @return New node to route this job to.
*/
- public ClusterNode failover(GridTaskSessionImpl taskSes, ComputeJobResult jobRes, List<ClusterNode> top,
- Object affKey, String affCacheName) {
+ public ClusterNode failover(GridTaskSessionImpl taskSes,
+ ComputeJobResult jobRes,
+ List<ClusterNode> top,
+ @Nullable Object affKey,
+ @Nullable String affCacheName) {
return getSpi(taskSes.getFailoverSpi()).failover(new GridFailoverContextImpl(taskSes, jobRes,
ctx.loadBalancing(), affKey, affCacheName), top);
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b2770d55/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/AffinityTask.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/AffinityTask.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/AffinityTask.java
new file mode 100644
index 0000000..1b32444
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/AffinityTask.java
@@ -0,0 +1,35 @@
+/*
+ * 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.closure;
+
+import org.jetbrains.annotations.*;
+
+/**
+ * Affinity mapped task.
+ */
+public interface AffinityTask {
+ /**
+ * @return Affinity key.
+ */
+ public Object affinityKey();
+
+ /**
+ * @return Affinity cache name.
+ */
+ @Nullable public String affinityCacheName();
+}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b2770d55/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
index 02b14a1..21bfc11 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
@@ -413,13 +413,12 @@ public class GridClosureProcessor extends GridProcessorAdapter {
final ClusterNode node = ctx.affinity().mapKeyToNode(cacheName, affKey0);
- ctx.task().setThreadContext(TC_SUBGRID, nodes);
- ctx.task().setThreadContext(TC_AFFINITY_KEY, affKey0);
+ if (node == null)
+ return ComputeTaskInternalFuture.finishedFuture(ctx, T5.class, U.emptyTopologyException());
- if (cacheName != null)
- ctx.task().setThreadContext(TC_AFFINITY_CACHE, cacheName);
+ ctx.task().setThreadContext(TC_SUBGRID, nodes);
- return ctx.task().execute(new T5(node, job), null, false);
+ return ctx.task().execute(new T5(node, job, affKey0, cacheName), null, false);
}
catch (IgniteCheckedException e) {
return ComputeTaskInternalFuture.finishedFuture(ctx, T5.class, e);
@@ -449,13 +448,12 @@ public class GridClosureProcessor extends GridProcessorAdapter {
final ClusterNode node = ctx.affinity().mapKeyToNode(cacheName, affKey0);
- ctx.task().setThreadContext(TC_SUBGRID, nodes);
- ctx.task().setThreadContext(TC_AFFINITY_KEY, affKey0);
+ if (node == null)
+ return ComputeTaskInternalFuture.finishedFuture(ctx, T4.class, U.emptyTopologyException());
- if (cacheName != null)
- ctx.task().setThreadContext(TC_AFFINITY_CACHE, cacheName);
+ ctx.task().setThreadContext(TC_SUBGRID, nodes);
- return ctx.task().execute(new T4(node, job), null, false);
+ return ctx.task().execute(new T4(node, job, affKey0, cacheName), null, false);
}
catch (IgniteCheckedException e) {
return ComputeTaskInternalFuture.finishedFuture(ctx, T4.class, e);
@@ -1231,7 +1229,7 @@ public class GridClosureProcessor extends GridProcessorAdapter {
/**
*/
- private static class T4 extends TaskNoReduceAdapter<Void> implements GridNoImplicitInjection {
+ private static class T4 extends TaskNoReduceAdapter<Void> implements GridNoImplicitInjection, AffinityTask {
/** */
private static final long serialVersionUID = 0L;
@@ -1241,15 +1239,27 @@ public class GridClosureProcessor extends GridProcessorAdapter {
/** */
private Runnable job;
+ /** */
+ private Object affKey;
+
+ /** */
+ private String affCacheName;
+
/**
* @param node Cluster node.
* @param job Job.
+ * @param affKey Affinity key.
+ * @param affCacheName Affinity cache name.
*/
- private T4(ClusterNode node, Runnable job) {
+ private T4(ClusterNode node, Runnable job, Object affKey, String affCacheName) {
super(U.peerDeployAware0(job));
+ assert affKey != null;
+
this.node = node;
this.job = job;
+ this.affKey = affKey;
+ this.affCacheName = affCacheName;
}
/** {@inheritDoc} */
@@ -1258,11 +1268,22 @@ public class GridClosureProcessor extends GridProcessorAdapter {
return Collections.singletonMap(job, node);
}
+
+ /** {@inheritDoc} */
+ @Override public Object affinityKey() {
+ return affKey;
+ }
+
+ /** {@inheritDoc} */
+ @Nullable @Override public String affinityCacheName() {
+ return affCacheName;
+ }
}
/**
*/
- private static class T5<R> extends GridPeerDeployAwareTaskAdapter<Void, R> implements GridNoImplicitInjection {
+ private static class T5<R> extends GridPeerDeployAwareTaskAdapter<Void, R> implements
+ GridNoImplicitInjection, AffinityTask {
/** */
private static final long serialVersionUID = 0L;
@@ -1272,15 +1293,27 @@ public class GridClosureProcessor extends GridProcessorAdapter {
/** */
private Callable<R> job;
+ /** */
+ private Object affKey;
+
+ /** */
+ private String affCacheName;
+
/**
* @param node Cluster node.
* @param job Job.
+ * @param affKey Affinity key.
+ * @param affCacheName Affinity cache name.
*/
- private T5(ClusterNode node, Callable<R> job) {
+ private T5(ClusterNode node, Callable<R> job, Object affKey, String affCacheName) {
super(U.peerDeployAware0(job));
+ assert affKey != null;
+
this.node = node;
this.job = job;
+ this.affKey = affKey;
+ this.affCacheName = affCacheName;
}
/** {@inheritDoc} */
@@ -1299,6 +1332,16 @@ public class GridClosureProcessor extends GridProcessorAdapter {
throw new IgniteException("Failed to find successful job result: " + res);
}
+
+ /** {@inheritDoc} */
+ @Override public Object affinityKey() {
+ return affKey;
+ }
+
+ /** {@inheritDoc} */
+ @Nullable @Override public String affinityCacheName() {
+ return affCacheName;
+ }
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b2770d55/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskThreadContextKey.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskThreadContextKey.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskThreadContextKey.java
index 0bfac62..df706cf 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskThreadContextKey.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskThreadContextKey.java
@@ -27,12 +27,6 @@ public enum GridTaskThreadContextKey {
/** No failover flag. */
TC_NO_FAILOVER,
- /** Affinity key. */
- TC_AFFINITY_KEY,
-
- /** Affinity cache. */
- TC_AFFINITY_CACHE,
-
/** Projection for the task. */
TC_SUBGRID,
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b2770d55/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
index ed9958f..ee62df8 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
@@ -26,6 +26,7 @@ import org.apache.ignite.internal.*;
import org.apache.ignite.internal.cluster.*;
import org.apache.ignite.internal.compute.*;
import org.apache.ignite.internal.managers.deployment.*;
+import org.apache.ignite.internal.processors.closure.*;
import org.apache.ignite.internal.processors.timeout.*;
import org.apache.ignite.internal.util.typedef.*;
import org.apache.ignite.internal.util.typedef.internal.*;
@@ -252,8 +253,16 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
this.noFailover = noFailover != null ? noFailover : false;
- this.affKey = getThreadContext(TC_AFFINITY_KEY);
- this.affCache = getThreadContext(TC_AFFINITY_CACHE);
+ if (task instanceof AffinityTask) {
+ AffinityTask affTask = (AffinityTask)task;
+
+ affKey = affTask.affinityKey();
+ affCache = affTask.affinityCacheName();
+ }
+ else {
+ affKey = null;
+ affCache = null;
+ }
}
/**
@@ -406,7 +415,9 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
ses.setClassLoader(dep.classLoader());
- final List<ClusterNode> shuffledNodes = getTaskTopology();
+ // Nodes are ignored by affinity tasks.
+ final List<ClusterNode> shuffledNodes =
+ affKey == null ? getTaskTopology() : Collections.<ClusterNode>emptyList();
// Load balancer.
ComputeLoadBalancer balancer = ctx.loadBalancing().getLoadBalancer(ses, shuffledNodes);
@@ -568,9 +579,6 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
Collection<? extends ClusterNode> subgrid = top != null ? ctx.discovery().nodes(top) : ctx.discovery().allNodes();
- if (affKey != null)
- return Collections.singletonList(ctx.affinity().mapKeyToNode(affCache, affKey));
-
int size = subgrid.size();
if (size == 0)
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b2770d55/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java b/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java
index eddd9ea..865f1a2 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java
@@ -21,6 +21,7 @@ import org.apache.ignite.*;
import org.apache.ignite.cluster.*;
import org.apache.ignite.compute.*;
import org.apache.ignite.lang.*;
+import org.jetbrains.annotations.*;
import java.util.*;
@@ -60,7 +61,7 @@ public interface FailoverContext {
*
* @return Affinity key.
*/
- public Object affinityKey();
+ @Nullable public Object affinityKey();
/**
* Returns affinity cache name {@link IgniteCompute#affinityRun(String, Object, IgniteRunnable)}
@@ -68,5 +69,5 @@ public interface FailoverContext {
*
* @return Cache name.
*/
- public String affinityCacheName();
+ @Nullable public String affinityCacheName();
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/b2770d55/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
index eeaf18e..e925995 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
@@ -178,8 +178,6 @@ public class AlwaysFailoverSpi extends IgniteSpiAdapter implements FailoverSpi,
return null;
}
- Collection<UUID> failedNodes = ctx.getJobResult().getJobContext().getAttribute(FAILED_NODE_LIST_ATTR);
-
if (ctx.affinityKey() != null) {
Integer affCallAttempt = ctx.getJobResult().getJobContext().getAttribute(AFFINITY_CALL_ATTEMPT);
@@ -200,6 +198,8 @@ public class AlwaysFailoverSpi extends IgniteSpiAdapter implements FailoverSpi,
}
}
+ Collection<UUID> failedNodes = ctx.getJobResult().getJobContext().getAttribute(FAILED_NODE_LIST_ATTR);
+
if (failedNodes == null)
failedNodes = U.newHashSet(1);
[20/23] incubator-ignite git commit: #ignite-1087: add tests.
Posted by iv...@apache.org.
#ignite-1087: add tests.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/3adebed7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/3adebed7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/3adebed7
Branch: refs/heads/ignite-1087
Commit: 3adebed798c0f17a99bb38bb698973c2ee3f026a
Parents: 14b58db
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jul 13 16:44:59 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jul 13 16:44:59 2015 +0300
----------------------------------------------------------------------
.../processors/cache/CacheAffinityCallSelfTest.java | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/3adebed7/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
index 2505eb9..a6773b6 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
@@ -1,7 +1,7 @@
package org.apache.ignite.internal.processors.cache;
import org.apache.ignite.*;
-import org.apache.ignite.cluster.*;
+import org.apache.ignite.compute.*;
import org.apache.ignite.configuration.*;
import org.apache.ignite.internal.*;
import org.apache.ignite.internal.util.typedef.internal.*;
@@ -62,11 +62,6 @@ public class CacheAffinityCallSelfTest extends GridCommonAbstractTest {
return cfg;
}
- /** {@inheritDoc} */
- @Override protected void afterTestsStopped() throws Exception {
- stopAllGrids();
- }
-
/**
* @throws Exception If failed.
*/
@@ -116,9 +111,9 @@ public class CacheAffinityCallSelfTest extends GridCommonAbstractTest {
return null;
}
- }, ClusterGroupEmptyException.class, "Topology projection is empty");
+ }, ComputeTaskCancelledException.class, null);
- stopAllGrids();
+ stopGrid(SERVERS_COUNT);
}
/**
[12/23] incubator-ignite git commit: #ignite-1087: add test.
Posted by iv...@apache.org.
#ignite-1087: add test.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/692efd4e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/692efd4e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/692efd4e
Branch: refs/heads/ignite-1087
Commit: 692efd4e523b25f82793e47a0b4a4bf5a8e3d6c2
Parents: d52186b
Author: ivasilinets <iv...@gridgain.com>
Authored: Thu Jul 9 15:51:32 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Thu Jul 9 15:51:32 2015 +0300
----------------------------------------------------------------------
.../processors/cache/GridCacheAffinityRoutingSelfTest.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/692efd4e/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
index bb99406..b5cdc08 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
@@ -356,7 +356,7 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
@Override public Object call() throws IgniteCheckedException {
assert ignite.cluster().localNode().id().equals(ignite.cluster().mapKeyToNode(null, affKey).id());
assert ignite.cluster().localNode().id().equals(ignite.cluster().mapKeyToNode(null, key).id());
- System.out.println("CALL ON NODE=" + ignite.name());
+
return null;
}
}
[06/23] incubator-ignite git commit: Merge branch 'ignite-1086' of
https://git-wip-us.apache.org/repos/asf/incubator-ignite into ignite-1086
Posted by iv...@apache.org.
Merge branch 'ignite-1086' of https://git-wip-us.apache.org/repos/asf/incubator-ignite into ignite-1086
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/95da6629
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/95da6629
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/95da6629
Branch: refs/heads/ignite-1087
Commit: 95da66291bc22af2e0155617c2c54994746e1e34
Parents: f8d1e90 558df06
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jul 6 10:59:58 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jul 6 10:59:58 2015 +0300
----------------------------------------------------------------------
----------------------------------------------------------------------
[11/23] incubator-ignite git commit: #ignite-1087: add test.
Posted by iv...@apache.org.
#ignite-1087: add test.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/d52186b8
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/d52186b8
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/d52186b8
Branch: refs/heads/ignite-1087
Commit: d52186b8663c2e8d30aa06ad26aefad5be9a16a9
Parents: c9f9460
Author: ivasilinets <iv...@gridgain.com>
Authored: Thu Jul 9 15:50:31 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Thu Jul 9 15:50:31 2015 +0300
----------------------------------------------------------------------
.../processors/task/GridTaskWorker.java | 3 +
.../cache/GridCacheAffinityRoutingSelfTest.java | 74 ++++++++++++++++----
2 files changed, 63 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d52186b8/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
index c725a42..ed9958f 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
@@ -568,6 +568,9 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
Collection<? extends ClusterNode> subgrid = top != null ? ctx.discovery().nodes(top) : ctx.discovery().allNodes();
+ if (affKey != null)
+ return Collections.singletonList(ctx.affinity().mapKeyToNode(affCache, affKey));
+
int size = subgrid.size();
if (size == 0)
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/d52186b8/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
index 80e558b..bb99406 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
@@ -22,12 +22,15 @@ import org.apache.ignite.cache.affinity.*;
import org.apache.ignite.cluster.*;
import org.apache.ignite.compute.*;
import org.apache.ignite.configuration.*;
+import org.apache.ignite.internal.*;
import org.apache.ignite.internal.util.typedef.*;
+import org.apache.ignite.internal.util.typedef.internal.*;
import org.apache.ignite.lang.*;
import org.apache.ignite.resources.*;
import org.apache.ignite.spi.discovery.tcp.*;
import org.apache.ignite.spi.discovery.tcp.ipfinder.*;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.*;
+import org.apache.ignite.spi.failover.always.*;
import org.apache.ignite.testframework.*;
import org.apache.ignite.testframework.junits.common.*;
@@ -50,6 +53,9 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
private static final int KEY_CNT = 50;
/** */
+ private static final int MAX_FAILOVER_ATTEMPTS = 5;
+
+ /** */
private static TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
/**
@@ -69,6 +75,10 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
cfg.setDiscoverySpi(spi);
+ AlwaysFailoverSpi failSpi = new AlwaysFailoverSpi();
+ failSpi.setMaximumFailoverAttempts(MAX_FAILOVER_ATTEMPTS);
+ cfg.setFailoverSpi(failSpi);
+
if (!gridName.equals(getTestGridName(GRID_CNT))) {
// Default cache configuration.
CacheConfiguration dfltCacheCfg = defaultCacheConfiguration();
@@ -134,16 +144,45 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
/**
* @throws Exception If failed.
*/
- public void testAffinityRunRestart() throws Exception {
+ public void testAffinityCallRestartFails() throws Exception {
GridTestUtils.assertThrows(log, new Callable<Object>() {
@Override public Object call() throws Exception {
- grid(0).compute().affinityRun(NON_DFLT_CACHE_NAME, "key", new FailedRunnable("key"));
+ grid(0).compute().affinityCall(NON_DFLT_CACHE_NAME, "key",
+ new FailedCallable("key", MAX_FAILOVER_ATTEMPTS + 1));
return null;
}
}, ClusterTopologyException.class, "Failed to failover a job to another node");
}
/**
+ * @throws Exception If failed.
+ */
+ public void testAffinityCallRestart() throws Exception {
+ assertEquals(MAX_FAILOVER_ATTEMPTS,
+ grid(0).compute().affinityCall(NON_DFLT_CACHE_NAME, "key",
+ new FailedCallable("key", MAX_FAILOVER_ATTEMPTS)));
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testAffinityCallRestartNode() throws Exception {
+ Integer key = primaryKey(grid(0).cache(NON_DFLT_CACHE_NAME));
+
+ IgniteInternalFuture<Object> fut = GridTestUtils.runAsync(new Callable<Object>() {
+ @Override public Object call() throws Exception {
+ U.sleep(500);
+ stopGrid(0);
+
+ return null;
+ }
+ });
+
+ while (!fut.isDone())
+ grid(1).compute().affinityCall(NON_DFLT_CACHE_NAME, key, new CheckCallable(key, key));
+ }
+
+ /**
* JUnit.
*
* @throws Exception If failed.
@@ -241,7 +280,10 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
/**
* Test runnable.
*/
- private static class FailedRunnable extends CAX {
+ private static class FailedCallable implements IgniteCallable<Object> {
+ /** */
+ private static final String ATTR_ATTEMPT = "Attempt";
+
/** */
@IgniteInstanceResource
private Ignite ignite;
@@ -253,29 +295,33 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
/** Key. */
private final Object key;
+ /** Call attempts. */
+ private final Integer callAttempt;
+
/**
* @param key Key.
+ * @param callAttempt Call attempts.
*/
- public FailedRunnable(Object key) {
+ public FailedCallable(Object key, Integer callAttempt) {
this.key = key;
+ this.callAttempt = callAttempt;
}
/** {@inheritDoc} */
- @Override public void applyx() throws IgniteCheckedException {
- Integer attempt = jobCtx.getAttribute("Attempt");
+ @Override public Object call() throws IgniteCheckedException {
+ Integer attempt = jobCtx.getAttribute(ATTR_ATTEMPT);
if (attempt == null)
- attempt = 0;
-
- System.out.println("Attempt=" + attempt);
-
- System.out.println("RUN ON NODE: " + ignite.cluster().localNode().id());
+ attempt = 1;
assertEquals(ignite.affinity(NON_DFLT_CACHE_NAME).mapKeyToNode(key), ignite.cluster().localNode());
- jobCtx.setAttribute("Attempt", attempt + 1);
+ jobCtx.setAttribute(ATTR_ATTEMPT, attempt + 1);
- throw new ComputeJobFailoverException("Failover exception.");
+ if (attempt < callAttempt)
+ throw new ComputeJobFailoverException("Failover exception.");
+ else
+ return attempt;
}
}
@@ -310,7 +356,7 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
@Override public Object call() throws IgniteCheckedException {
assert ignite.cluster().localNode().id().equals(ignite.cluster().mapKeyToNode(null, affKey).id());
assert ignite.cluster().localNode().id().equals(ignite.cluster().mapKeyToNode(null, key).id());
-
+ System.out.println("CALL ON NODE=" + ignite.name());
return null;
}
}
[21/23] incubator-ignite git commit: #ignite-1087: header.
Posted by iv...@apache.org.
#ignite-1087: header.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/046a6f8f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/046a6f8f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/046a6f8f
Branch: refs/heads/ignite-1087
Commit: 046a6f8fa04a036a3306949debe4a497d64c6b88
Parents: 3adebed
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jul 13 17:01:05 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jul 13 17:01:05 2015 +0300
----------------------------------------------------------------------
.../cache/CacheAffinityCallSelfTest.java | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/046a6f8f/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
index a6773b6..b89e078 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
@@ -1,3 +1,20 @@
+/*
+ * 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;
import org.apache.ignite.*;
[05/23] incubator-ignite git commit: #ignite-1086: change test.
Posted by iv...@apache.org.
#ignite-1086: change test.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/f8d1e90e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/f8d1e90e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/f8d1e90e
Branch: refs/heads/ignite-1087
Commit: f8d1e90e942ffc996b18a6c46f96ec090b27ba61
Parents: 84233f2
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jul 6 10:59:44 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jul 6 10:59:44 2015 +0300
----------------------------------------------------------------------
.../TcpDiscoveryNodeConsistentIdSelfTest.java | 24 +++++++++++++++-----
1 file changed, 18 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/f8d1e90e/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryNodeConsistentIdSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryNodeConsistentIdSelfTest.java b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryNodeConsistentIdSelfTest.java
index 411e85d..d159d72 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryNodeConsistentIdSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryNodeConsistentIdSelfTest.java
@@ -17,6 +17,7 @@
package org.apache.ignite.spi.discovery.tcp;
+import org.apache.ignite.*;
import org.apache.ignite.configuration.*;
import org.apache.ignite.spi.discovery.tcp.internal.*;
import org.apache.ignite.spi.discovery.tcp.ipfinder.*;
@@ -43,7 +44,7 @@ public class TcpDiscoveryNodeConsistentIdSelfTest extends GridCommonAbstractTest
/** {@inheritDoc} */
@Override protected void beforeTest() throws Exception {
- startGrids(2);
+ startGrids(1);
}
/** {@inheritDoc} */
@@ -56,13 +57,24 @@ public class TcpDiscoveryNodeConsistentIdSelfTest extends GridCommonAbstractTest
*/
public void testConsistentId() throws Exception {
Object id0 = grid(0).localNode().consistentId();
- Object id1 = grid(1).localNode().consistentId();
- stopAllGrids();
+ int port0 = getDiscoveryPort(grid(0));
+
+ for (int i = 0; i < 10; ++i) {
+ stopAllGrids();
+
+ startGrids(1);
- startGrids(2);
+ if (port0 == getDiscoveryPort(grid(0)))
+ assertEquals(id0, grid(0).localNode().consistentId());
+ }
+ }
- assertEquals(id0, grid(0).localNode().consistentId());
- assertEquals(id1, grid(1).localNode().consistentId());
+ /**
+ * @param ignite Ignite.
+ * @return Discovery port.
+ */
+ private int getDiscoveryPort(Ignite ignite) {
+ return ((TcpDiscoveryNode) ignite.cluster().localNode()).discoveryPort();
}
}
[07/23] incubator-ignite git commit: Merge branch 'ignite-1086' into
ignite-1087
Posted by iv...@apache.org.
Merge branch 'ignite-1086' into ignite-1087
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/2c2def05
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/2c2def05
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/2c2def05
Branch: refs/heads/ignite-1087
Commit: 2c2def05266a7f8ead7629ee328b21d1a1aa56a3
Parents: 355e33d 95da662
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jul 6 11:04:17 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jul 6 11:04:17 2015 +0300
----------------------------------------------------------------------
bin/ignite.bat | 8 +-
bin/ignite.sh | 6 +-
bin/include/parseargs.bat | 1 +
bin/include/parseargs.sh | 3 +
.../startup/cmdline/CommandLineStartup.java | 3 +-
.../startup/cmdline/CommandLineTransformer.java | 9 +
.../GridCachePartitionedFailoverSelfTest.java | 5 +
...acheAtomicReplicatedNodeRestartSelfTest.java | 5 +
.../TcpDiscoveryNodeConsistentIdSelfTest.java | 24 +-
modules/kafka/pom.xml | 116 ++++++
.../ignite/stream/kafka/KafkaStreamer.java | 220 +++++++++++
.../kafka/IgniteKafkaStreamerSelfTestSuite.java | 37 ++
.../stream/kafka/KafkaEmbeddedBroker.java | 378 +++++++++++++++++++
.../kafka/KafkaIgniteStreamerSelfTest.java | 227 +++++++++++
.../ignite/stream/kafka/SimplePartitioner.java | 53 +++
.../util/spring/IgniteSpringHelperImpl.java | 72 +++-
.../IgniteExcludeInConfigurationTest.java | 78 ++++
.../org/apache/ignite/spring/sprint-exclude.xml | 57 +++
.../testsuites/IgniteSpringTestSuite.java | 2 +
.../ignite/visor/commands/VisorConsole.scala | 3 +-
.../visor/commands/open/VisorOpenCommand.scala | 319 ++++++++++++++++
.../scala/org/apache/ignite/visor/visor.scala | 230 +----------
.../ignite/visor/VisorRuntimeBaseSpec.scala | 2 +
.../commands/kill/VisorKillCommandSpec.scala | 1 +
.../commands/start/VisorStartCommandSpec.scala | 1 +
.../commands/tasks/VisorTasksCommandSpec.scala | 1 +
.../commands/vvm/VisorVvmCommandSpec.scala | 1 +
pom.xml | 1 +
28 files changed, 1616 insertions(+), 247 deletions(-)
----------------------------------------------------------------------
[08/23] incubator-ignite git commit: #ignite-1087: fix test.
Posted by iv...@apache.org.
#ignite-1087: fix test.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/18e4de6b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/18e4de6b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/18e4de6b
Branch: refs/heads/ignite-1087
Commit: 18e4de6b604d3a0ab9a427a43bc3e4c9ff546cfd
Parents: 2c2def0
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jul 6 11:11:24 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jul 6 11:11:24 2015 +0300
----------------------------------------------------------------------
.../internal/processors/closure/GridClosureProcessor.java | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/18e4de6b/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
index 1eb53ee..02b14a1 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
@@ -415,7 +415,9 @@ public class GridClosureProcessor extends GridProcessorAdapter {
ctx.task().setThreadContext(TC_SUBGRID, nodes);
ctx.task().setThreadContext(TC_AFFINITY_KEY, affKey0);
- ctx.task().setThreadContext(TC_AFFINITY_CACHE, cacheName);
+
+ if (cacheName != null)
+ ctx.task().setThreadContext(TC_AFFINITY_CACHE, cacheName);
return ctx.task().execute(new T5(node, job), null, false);
}
@@ -449,7 +451,9 @@ public class GridClosureProcessor extends GridProcessorAdapter {
ctx.task().setThreadContext(TC_SUBGRID, nodes);
ctx.task().setThreadContext(TC_AFFINITY_KEY, affKey0);
- ctx.task().setThreadContext(TC_AFFINITY_CACHE, cacheName);
+
+ if (cacheName != null)
+ ctx.task().setThreadContext(TC_AFFINITY_CACHE, cacheName);
return ctx.task().execute(new T4(node, job), null, false);
}
[03/23] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/ignite-sprint-7' into ignite-1086
Posted by iv...@apache.org.
Merge remote-tracking branch 'remotes/origin/ignite-sprint-7' into ignite-1086
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/558df06d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/558df06d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/558df06d
Branch: refs/heads/ignite-1087
Commit: 558df06d4da01c434c8c3647dc0608f5d18172e2
Parents: d8f5b6f f72b291
Author: sboikov <sb...@gridgain.com>
Authored: Mon Jul 6 09:19:32 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Mon Jul 6 09:19:32 2015 +0300
----------------------------------------------------------------------
bin/ignite.bat | 8 +-
bin/ignite.sh | 6 +-
bin/include/parseargs.bat | 1 +
bin/include/parseargs.sh | 3 +
.../startup/cmdline/CommandLineStartup.java | 3 +-
.../startup/cmdline/CommandLineTransformer.java | 9 +
.../GridCachePartitionedFailoverSelfTest.java | 5 +
modules/kafka/pom.xml | 116 ++++++
.../ignite/stream/kafka/KafkaStreamer.java | 220 +++++++++++
.../kafka/IgniteKafkaStreamerSelfTestSuite.java | 37 ++
.../stream/kafka/KafkaEmbeddedBroker.java | 378 +++++++++++++++++++
.../kafka/KafkaIgniteStreamerSelfTest.java | 227 +++++++++++
.../ignite/stream/kafka/SimplePartitioner.java | 53 +++
.../util/spring/IgniteSpringHelperImpl.java | 72 +++-
.../IgniteExcludeInConfigurationTest.java | 78 ++++
.../org/apache/ignite/spring/sprint-exclude.xml | 57 +++
.../testsuites/IgniteSpringTestSuite.java | 2 +
.../ignite/visor/commands/VisorConsole.scala | 3 +-
.../visor/commands/open/VisorOpenCommand.scala | 319 ++++++++++++++++
.../scala/org/apache/ignite/visor/visor.scala | 230 +----------
.../ignite/visor/VisorRuntimeBaseSpec.scala | 2 +
.../commands/kill/VisorKillCommandSpec.scala | 1 +
.../commands/start/VisorStartCommandSpec.scala | 1 +
.../commands/tasks/VisorTasksCommandSpec.scala | 1 +
.../commands/vvm/VisorVvmCommandSpec.scala | 1 +
pom.xml | 1 +
26 files changed, 1593 insertions(+), 241 deletions(-)
----------------------------------------------------------------------
[14/23] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/master' into ignite-1087
Posted by iv...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-1087
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/f2511ff2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/f2511ff2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/f2511ff2
Branch: refs/heads/ignite-1087
Commit: f2511ff2a1846d6e32b62489e05a2586c415d307
Parents: 3aba787 bee6f68
Author: sboikov <sb...@gridgain.com>
Authored: Thu Jul 9 18:06:24 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Thu Jul 9 18:06:24 2015 +0300
----------------------------------------------------------------------
.../ignite/testsuites/IgniteHadoopTestSuite.java | 2 +-
.../util/spring/IgniteSpringHelperImpl.java | 10 +++++-----
.../spring/IgniteExcludeInConfigurationTest.java | 5 ++++-
.../org/apache/ignite/spring/sprint-exclude.xml | 19 +++++++++++++++++++
.../visor/commands/open/VisorOpenCommand.scala | 2 +-
5 files changed, 30 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
[02/23] incubator-ignite git commit: #ignite-1087: affinity run runs
several times on primary node.
Posted by iv...@apache.org.
#ignite-1087: affinity run runs several times on primary node.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/355e33db
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/355e33db
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/355e33db
Branch: refs/heads/ignite-1087
Commit: 355e33db0b0551759a7ce976f6af53bc7ad5a36a
Parents: d8f5b6f
Author: ivasilinets <iv...@gridgain.com>
Authored: Fri Jul 3 14:37:55 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Fri Jul 3 14:37:55 2015 +0300
----------------------------------------------------------------------
.../closure/GridClosureProcessor.java | 4 ++
.../task/GridTaskThreadContextKey.java | 6 +++
.../processors/task/GridTaskWorker.java | 16 ++++++
.../spi/failover/always/AlwaysFailoverSpi.java | 37 +++++++++++++
.../cache/GridCacheAffinityRoutingSelfTest.java | 56 +++++++++++++++++++-
5 files changed, 118 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/355e33db/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
index 658557e..1eb53ee 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/closure/GridClosureProcessor.java
@@ -414,6 +414,8 @@ public class GridClosureProcessor extends GridProcessorAdapter {
final ClusterNode node = ctx.affinity().mapKeyToNode(cacheName, affKey0);
ctx.task().setThreadContext(TC_SUBGRID, nodes);
+ ctx.task().setThreadContext(TC_AFFINITY_KEY, affKey0);
+ ctx.task().setThreadContext(TC_AFFINITY_CACHE, cacheName);
return ctx.task().execute(new T5(node, job), null, false);
}
@@ -446,6 +448,8 @@ public class GridClosureProcessor extends GridProcessorAdapter {
final ClusterNode node = ctx.affinity().mapKeyToNode(cacheName, affKey0);
ctx.task().setThreadContext(TC_SUBGRID, nodes);
+ ctx.task().setThreadContext(TC_AFFINITY_KEY, affKey0);
+ ctx.task().setThreadContext(TC_AFFINITY_CACHE, cacheName);
return ctx.task().execute(new T4(node, job), null, false);
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/355e33db/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskThreadContextKey.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskThreadContextKey.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskThreadContextKey.java
index df706cf..0bfac62 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskThreadContextKey.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskThreadContextKey.java
@@ -27,6 +27,12 @@ public enum GridTaskThreadContextKey {
/** No failover flag. */
TC_NO_FAILOVER,
+ /** Affinity key. */
+ TC_AFFINITY_KEY,
+
+ /** Affinity cache. */
+ TC_AFFINITY_CACHE,
+
/** Projection for the task. */
TC_SUBGRID,
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/355e33db/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
index eb5fa77..61bb62a 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
@@ -34,6 +34,7 @@ import org.apache.ignite.internal.visor.util.*;
import org.apache.ignite.lang.*;
import org.apache.ignite.marshaller.*;
import org.apache.ignite.resources.*;
+import org.apache.ignite.spi.failover.always.*;
import org.jetbrains.annotations.*;
import org.jsr166.*;
@@ -136,6 +137,12 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
private final boolean noFailover;
/** */
+ private final Object affKey;
+
+ /** */
+ private final String affCache;
+
+ /** */
private final UUID subjId;
/** Continuous mapper. */
@@ -245,6 +252,9 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
Boolean noFailover = getThreadContext(TC_NO_FAILOVER);
this.noFailover = noFailover != null ? noFailover : false;
+
+ this.affKey = getThreadContext(TC_AFFINITY_KEY);
+ this.affCache = getThreadContext(TC_AFFINITY_CACHE);
}
/**
@@ -559,6 +569,9 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
Collection<? extends ClusterNode> subgrid = top != null ? ctx.discovery().nodes(top) : ctx.discovery().allNodes();
+ if (affKey != null)
+ return Collections.singletonList(ctx.affinity().mapKeyToNode(affCache, affKey));
+
int size = subgrid.size();
if (size == 0)
@@ -769,6 +782,9 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
}
case FAILOVER: {
+ if (jobRes != null && affKey != null)
+ jobRes.getJobContext().setAttribute(AlwaysFailoverSpi.AFFINITY_CALL_FLAG, true);
+
if (!failover(res, jobRes, getTaskTopology()))
plc = null;
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/355e33db/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
index e075d3e..c5c0f18 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
@@ -92,6 +92,21 @@ public class AlwaysFailoverSpi extends IgniteSpiAdapter implements FailoverSpi,
*/
public static final String FAILED_NODE_LIST_ATTR = "gg:failover:failednodelist";
+ /**
+ * Name of job context attribute containing affinity call flag for affinity call.
+ *
+ * @see org.apache.ignite.compute.ComputeJobContext
+ */
+ public static final String AFFINITY_CALL_ATTEMPT = "ignite:failover:affinitycallattempt";
+
+ /**
+ * Name of job context attribute containing affinity call flag for affinity call.
+ *
+ * @see org.apache.ignite.compute.ComputeJobContext
+ */
+ public static final String AFFINITY_CALL_FLAG = "ignite:failover:affinitycall";
+
+
/** Maximum attempts attribute key should be the same on all nodes. */
public static final String MAX_FAILOVER_ATTEMPT_ATTR = "gg:failover:maxattempts";
@@ -175,6 +190,28 @@ public class AlwaysFailoverSpi extends IgniteSpiAdapter implements FailoverSpi,
Collection<UUID> failedNodes = ctx.getJobResult().getJobContext().getAttribute(FAILED_NODE_LIST_ATTR);
+ Boolean affCall = ctx.getJobResult().getJobContext().getAttribute(AFFINITY_CALL_FLAG);
+
+ if (affCall != null && affCall) {
+ Integer affCallAttempt = ctx.getJobResult().getJobContext().getAttribute(AFFINITY_CALL_ATTEMPT);
+
+ if (affCallAttempt == null)
+ affCallAttempt = 1;
+
+ if (maxFailoverAttempts <= affCallAttempt) {
+ U.warn(log, "Job failover failed because number of maximum failover attempts for affinity call" +
+ " is exceeded [failedJob=" + ctx.getJobResult().getJob() + ", maxFailoverAttempts=" +
+ maxFailoverAttempts + ']');
+
+ return null;
+ }
+ else {
+ ctx.getJobResult().getJobContext().setAttribute(AFFINITY_CALL_ATTEMPT, affCallAttempt + 1);
+
+ return top.get(0);
+ }
+ }
+
if (failedNodes == null)
failedNodes = U.newHashSet(1);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/355e33db/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
index 78ecf08..38de9a1 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
@@ -19,17 +19,20 @@ package org.apache.ignite.internal.processors.cache;
import org.apache.ignite.*;
import org.apache.ignite.cache.affinity.*;
+import org.apache.ignite.cluster.*;
import org.apache.ignite.compute.*;
import org.apache.ignite.configuration.*;
import org.apache.ignite.internal.util.typedef.*;
import org.apache.ignite.lang.*;
-import org.apache.ignite.marshaller.optimized.*;
import org.apache.ignite.resources.*;
import org.apache.ignite.spi.discovery.tcp.*;
import org.apache.ignite.spi.discovery.tcp.ipfinder.*;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.*;
+import org.apache.ignite.testframework.*;
import org.apache.ignite.testframework.junits.common.*;
+import java.util.concurrent.*;
+
import static org.apache.ignite.cache.CacheMode.*;
import static org.apache.ignite.cache.CacheWriteSynchronizationMode.*;
@@ -129,6 +132,18 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
}
/**
+ * @throws Exception If failed.
+ */
+ public void testAffinityRunRestart() throws Exception {
+ GridTestUtils.assertThrows(log, new Callable<Object>() {
+ @Override public Object call() throws Exception {
+ grid(0).compute().affinityRun(NON_DFLT_CACHE_NAME, "key", new FailedRunnable("key"));
+ return null;
+ }
+ }, ClusterTopologyException.class, "Failed to failover a job to another node");
+ }
+
+ /**
* JUnit.
*
* @throws Exception If failed.
@@ -224,6 +239,45 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
}
/**
+ * Test runnable.
+ */
+ private static class FailedRunnable extends CAX {
+ /** */
+ @IgniteInstanceResource
+ private Ignite ignite;
+
+ /** */
+ @JobContextResource
+ private ComputeJobContext jobCtx;
+
+ /** Key. */
+ private final Object key;
+
+ /**
+ * @param key Key.
+ */
+ public FailedRunnable(Object key) {
+ this.key = key;
+ }
+
+ /** {@inheritDoc} */
+ @Override public void applyx() throws IgniteCheckedException {
+ Integer attempt = jobCtx.getAttribute("Attempt");
+
+ if (attempt == null)
+ attempt = 0;
+
+ System.out.println("Attempt=" + attempt);
+
+ assertEquals(ignite.affinity(NON_DFLT_CACHE_NAME).mapKeyToNode(key), ignite.cluster().localNode());
+
+ jobCtx.setAttribute("Attempt", attempt + 1);
+
+ throw new ComputeJobFailoverException("Failover exception.");
+ }
+ }
+
+ /**
* Test callable.
*/
private static class CheckCallable implements IgniteCallable<Object> {
[18/23] incubator-ignite git commit: #ignite-1087: add tests.
Posted by iv...@apache.org.
#ignite-1087: add tests.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/17b0fb7b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/17b0fb7b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/17b0fb7b
Branch: refs/heads/ignite-1087
Commit: 17b0fb7be896b365225cdbad181ab9f46c362c18
Parents: fc793cd
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jul 13 15:19:55 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jul 13 15:19:55 2015 +0300
----------------------------------------------------------------------
.../cache/CacheAffinityCallSelfTest.java | 113 +++++++++++++++++++
.../cache/GridCacheAffinityRoutingSelfTest.java | 77 +++++++++++--
.../ignite/testsuites/IgniteCacheTestSuite.java | 1 +
3 files changed, 179 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/17b0fb7b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
new file mode 100644
index 0000000..a8a838e
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
@@ -0,0 +1,113 @@
+package org.apache.ignite.internal.processors.cache;
+
+import org.apache.ignite.*;
+import org.apache.ignite.configuration.*;
+import org.apache.ignite.internal.*;
+import org.apache.ignite.internal.util.typedef.internal.*;
+import org.apache.ignite.lang.*;
+import org.apache.ignite.resources.*;
+import org.apache.ignite.spi.discovery.tcp.*;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.*;
+import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.*;
+import org.apache.ignite.spi.failover.always.*;
+import org.apache.ignite.testframework.*;
+import org.apache.ignite.testframework.junits.common.*;
+
+import java.util.concurrent.*;
+
+import static org.apache.ignite.cache.CacheMode.*;
+
+/**
+ * Test for {@link IgniteCompute#affinityCall(String, Object, IgniteCallable)} and
+ * {@link IgniteCompute#affinityRun(String, Object, IgniteRunnable)}.
+ */
+public class CacheAffinityCallSelfTest extends GridCommonAbstractTest {
+ /** */
+ private static final String CACHE_NAME = "myCache";
+
+ /** */
+ private static final int MAX_FAILOVER_ATTEMPTS = 5;
+
+ /** */
+ private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+
+ /** {@inheritDoc} */
+ @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
+ IgniteConfiguration cfg = super.getConfiguration(gridName);
+
+ TcpDiscoverySpi spi = new TcpDiscoverySpi();
+
+ spi.setIpFinder(IP_FINDER);
+
+ cfg.setDiscoverySpi(spi);
+
+ AlwaysFailoverSpi failSpi = new AlwaysFailoverSpi();
+ failSpi.setMaximumFailoverAttempts(MAX_FAILOVER_ATTEMPTS);
+ cfg.setFailoverSpi(failSpi);
+
+ CacheConfiguration ccfg = defaultCacheConfiguration();
+ ccfg.setName(CACHE_NAME);
+ ccfg.setCacheMode(PARTITIONED);
+ ccfg.setBackups(1);
+
+ cfg.setCacheConfiguration(ccfg);
+
+ return cfg;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void afterTestsStopped() throws Exception {
+ stopAllGrids();
+ }
+
+ /**
+ * @throws Exception If failed.
+ */
+ public void testAffinityCallRestartNode() throws Exception {
+ startGrids(4);
+
+ Integer key = primaryKey(grid(0).cache(CACHE_NAME));
+
+ IgniteInternalFuture<Object> fut = GridTestUtils.runAsync(new Callable<Object>() {
+ @Override public Object call() throws Exception {
+ U.sleep(500);
+ stopGrid(0);
+
+ return null;
+ }
+ });
+
+ while (!fut.isDone())
+ grid(1).compute().affinityCall(CACHE_NAME, key, new CheckCallable(key));
+
+ stopAllGrids();
+ }
+
+ /**
+ * Test callable.
+ */
+ public static class CheckCallable implements IgniteCallable<Object> {
+ /** Key. */
+ private final Object key;
+
+ /** */
+ @IgniteInstanceResource
+ private Ignite ignite;
+
+ /**
+ * @param key Key.
+ */
+ public CheckCallable(Object key) {
+ this.key = key;
+ }
+
+ /** {@inheritDoc} */
+ @Override public Object call() throws IgniteCheckedException {
+ assert ignite.cluster().localNode().id().equals(ignite.cluster().mapKeyToNode(null, key).id());
+
+ return null;
+ }
+ }
+
+
+}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/17b0fb7b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
index b5cdc08..a56ab9f 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
@@ -22,9 +22,7 @@ import org.apache.ignite.cache.affinity.*;
import org.apache.ignite.cluster.*;
import org.apache.ignite.compute.*;
import org.apache.ignite.configuration.*;
-import org.apache.ignite.internal.*;
import org.apache.ignite.internal.util.typedef.*;
-import org.apache.ignite.internal.util.typedef.internal.*;
import org.apache.ignite.lang.*;
import org.apache.ignite.resources.*;
import org.apache.ignite.spi.discovery.tcp.*;
@@ -166,20 +164,21 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
/**
* @throws Exception If failed.
*/
- public void testAffinityCallRestartNode() throws Exception {
- Integer key = primaryKey(grid(0).cache(NON_DFLT_CACHE_NAME));
-
- IgniteInternalFuture<Object> fut = GridTestUtils.runAsync(new Callable<Object>() {
+ public void testAffinityRunRestartFails() throws Exception {
+ GridTestUtils.assertThrows(log, new Callable<Object>() {
@Override public Object call() throws Exception {
- U.sleep(500);
- stopGrid(0);
-
+ grid(0).compute().affinityRun(NON_DFLT_CACHE_NAME, "key",
+ new FailedRunnable("key", MAX_FAILOVER_ATTEMPTS + 1));
return null;
}
- });
+ }, ClusterTopologyException.class, "Failed to failover a job to another node");
+ }
- while (!fut.isDone())
- grid(1).compute().affinityCall(NON_DFLT_CACHE_NAME, key, new CheckCallable(key, key));
+ /**
+ * @throws Exception If failed.
+ */
+ public void testAffinityRunRestart() throws Exception {
+ grid(0).compute().affinityRun(NON_DFLT_CACHE_NAME, "key", new FailedRunnable("key", MAX_FAILOVER_ATTEMPTS));
}
/**
@@ -282,6 +281,9 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
*/
private static class FailedCallable implements IgniteCallable<Object> {
/** */
+ private static final long serialVersionUID = 0L;
+
+ /** */
private static final String ATTR_ATTEMPT = "Attempt";
/** */
@@ -326,6 +328,57 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
}
/**
+ * Test runnable.
+ */
+ private static class FailedRunnable implements IgniteRunnable {
+ /** */
+ private static final long serialVersionUID = 0L;
+
+ /** */
+ private static final String ATTR_ATTEMPT = "Attempt";
+
+ /** */
+ @IgniteInstanceResource
+ private Ignite ignite;
+
+ /** */
+ @JobContextResource
+ private ComputeJobContext jobCtx;
+
+ /** Key. */
+ private final Object key;
+
+ /** Call attempts. */
+ private final Integer callAttempt;
+
+ /**
+ * @param key Key.
+ * @param callAttempt Call attempts.
+ */
+ public FailedRunnable(Object key, Integer callAttempt) {
+ this.key = key;
+ this.callAttempt = callAttempt;
+ }
+
+ /** {@inheritDoc} */
+ @Override public void run() {
+ Integer attempt = jobCtx.getAttribute(ATTR_ATTEMPT);
+
+ if (attempt == null)
+ attempt = 1;
+
+ assertEquals(ignite.affinity(NON_DFLT_CACHE_NAME).mapKeyToNode(key), ignite.cluster().localNode());
+
+ jobCtx.setAttribute(ATTR_ATTEMPT, attempt + 1);
+
+ if (attempt < callAttempt)
+ throw new ComputeJobFailoverException("Failover exception.");
+ else
+ assertEquals(callAttempt, attempt);
+ }
+ }
+
+ /**
* Test callable.
*/
private static class CheckCallable implements IgniteCallable<Object> {
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/17b0fb7b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java
index 39702a3..bafdfef 100644
--- a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java
+++ b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java
@@ -109,6 +109,7 @@ public class IgniteCacheTestSuite extends TestSuite {
// Common tests.
suite.addTestSuite(GridCacheConcurrentMapSelfTest.class);
suite.addTestSuite(GridCacheAffinityMapperSelfTest.class);
+ suite.addTestSuite(CacheAffinityCallSelfTest.class);
GridTestUtils.addTestIfNeeded(suite, GridCacheAffinityRoutingSelfTest.class, ignoredTests);
GridTestUtils.addTestIfNeeded(suite, GridCacheMvccSelfTest.class, ignoredTests);
suite.addTestSuite(GridCacheMvccPartitionedSelfTest.class);
[22/23] incubator-ignite git commit: #ignite-1087: fix test
Posted by iv...@apache.org.
#ignite-1087: fix test
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/7e95c5fc
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/7e95c5fc
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/7e95c5fc
Branch: refs/heads/ignite-1087
Commit: 7e95c5fc72885f8c7b47ab99bce709ed3d77f459
Parents: 046a6f8
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jul 13 18:52:02 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jul 13 18:52:02 2015 +0300
----------------------------------------------------------------------
.../cache/CacheAffinityCallSelfTest.java | 27 ++++++++++++++------
1 file changed, 19 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/7e95c5fc/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
index b89e078..c4436ca 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/CacheAffinityCallSelfTest.java
@@ -18,6 +18,7 @@
package org.apache.ignite.internal.processors.cache;
import org.apache.ignite.*;
+import org.apache.ignite.cluster.*;
import org.apache.ignite.compute.*;
import org.apache.ignite.configuration.*;
import org.apache.ignite.internal.*;
@@ -79,6 +80,11 @@ public class CacheAffinityCallSelfTest extends GridCommonAbstractTest {
return cfg;
}
+ /** {@inheritDoc} */
+ @Override protected void afterTest() throws Exception {
+ stopAllGrids();
+ }
+
/**
* @throws Exception If failed.
*/
@@ -121,14 +127,19 @@ public class CacheAffinityCallSelfTest extends GridCommonAbstractTest {
}
});
- GridTestUtils.assertThrows(log, new Callable<Object>() {
- @Override public Object call() throws Exception {
- while (!fut.isDone())
- client.compute().affinityCall(CACHE_NAME, key, new CheckCallable(key));
-
- return null;
- }
- }, ComputeTaskCancelledException.class, null);
+ try {
+ while (!fut.isDone())
+ client.compute().affinityCall(CACHE_NAME, key, new CheckCallable(key));
+ }
+ catch (ComputeTaskCancelledException e) {
+ assertTrue(e.getMessage().contains("stopping"));
+ }
+ catch(ClusterGroupEmptyException e) {
+ assertTrue(e.getMessage().contains("Topology projection is empty"));
+ }
+ catch(IgniteException e) {
+ assertTrue(e.getMessage().contains("cache (or node) is stopping"));
+ }
stopGrid(SERVERS_COUNT);
}
[13/23] incubator-ignite git commit: #ignite-1087: change javadoc.
Posted by iv...@apache.org.
#ignite-1087: change javadoc.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/3aba787b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/3aba787b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/3aba787b
Branch: refs/heads/ignite-1087
Commit: 3aba787bb8865b90c716a3a5fc4bc84c1abde2f8
Parents: 692efd4
Author: ivasilinets <iv...@gridgain.com>
Authored: Thu Jul 9 15:53:01 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Thu Jul 9 15:53:01 2015 +0300
----------------------------------------------------------------------
.../org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/3aba787b/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
index ec07abb..eeaf18e 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
@@ -93,9 +93,7 @@ public class AlwaysFailoverSpi extends IgniteSpiAdapter implements FailoverSpi,
public static final String FAILED_NODE_LIST_ATTR = "gg:failover:failednodelist";
/**
- * Name of job context attribute containing affinity call flag for affinity call.
- *
- * @see org.apache.ignite.compute.ComputeJobContext
+ * Name of job context attribute containing number of affinity call attempts.
*/
public static final String AFFINITY_CALL_ATTEMPT = "ignite:failover:affinitycallattempt";
[10/23] incubator-ignite git commit: #ignite-1087: move affinity key
and affinity cache to FailoverContext.
Posted by iv...@apache.org.
#ignite-1087: move affinity key and affinity cache to FailoverContext.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/c9f9460a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/c9f9460a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/c9f9460a
Branch: refs/heads/ignite-1087
Commit: c9f9460a5be54baafa6cc2d8cc4de53831a0cbb6
Parents: 585043d
Author: ivasilinets <iv...@gridgain.com>
Authored: Thu Jul 9 15:07:34 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Thu Jul 9 15:07:34 2015 +0300
----------------------------------------------------------------------
.../failover/GridFailoverContextImpl.java | 22 +++++++++++++++++++-
.../managers/failover/GridFailoverManager.java | 7 +++++--
.../processors/task/GridTaskWorker.java | 9 +-------
.../ignite/spi/failover/FailoverContext.java | 17 +++++++++++++++
.../spi/failover/always/AlwaysFailoverSpi.java | 14 ++-----------
.../cache/GridCacheAffinityRoutingSelfTest.java | 2 ++
.../spi/failover/GridFailoverTestContext.java | 10 +++++++++
7 files changed, 58 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c9f9460a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java
index a3f8e44..0c1e7d8 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverContextImpl.java
@@ -41,15 +41,23 @@ public class GridFailoverContextImpl implements FailoverContext {
@GridToStringExclude
private final GridLoadBalancerManager loadMgr;
+ /** Affinity key for affinityCall. */
+ private final Object affKey;
+
+ /** Affinity cache name for affinityCall. */
+ private final String affCacheName;
+
/**
* Initializes failover context.
*
* @param taskSes Grid task session.
* @param jobRes Failed job result.
* @param loadMgr Load manager.
+ * @param affKey Affinity key.
+ * @param affCacheName Affinity cache name.
*/
public GridFailoverContextImpl(GridTaskSessionImpl taskSes, ComputeJobResult jobRes,
- GridLoadBalancerManager loadMgr) {
+ GridLoadBalancerManager loadMgr, Object affKey, String affCacheName) {
assert taskSes != null;
assert jobRes != null;
assert loadMgr != null;
@@ -57,6 +65,8 @@ public class GridFailoverContextImpl implements FailoverContext {
this.taskSes = taskSes;
this.jobRes = jobRes;
this.loadMgr = loadMgr;
+ this.affKey = affKey;
+ this.affCacheName = affCacheName;
}
/** {@inheritDoc} */
@@ -75,6 +85,16 @@ public class GridFailoverContextImpl implements FailoverContext {
}
/** {@inheritDoc} */
+ @Override public Object affinityKey() {
+ return affKey;
+ }
+
+ /** {@inheritDoc} */
+ @Override public String affinityCacheName() {
+ return affCacheName;
+ }
+
+ /** {@inheritDoc} */
@Override public String toString() {
return S.toString(GridFailoverContextImpl.class, this);
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c9f9460a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java
index 714cccb..4102514 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/failover/GridFailoverManager.java
@@ -57,10 +57,13 @@ public class GridFailoverManager extends GridManagerAdapter<FailoverSpi> {
* @param taskSes Task session.
* @param jobRes Job result.
* @param top Collection of all top nodes that does not include the failed node.
+ * @param affKey Affinity key.
+ * @param affCacheName Affinity cache name.
* @return New node to route this job to.
*/
- public ClusterNode failover(GridTaskSessionImpl taskSes, ComputeJobResult jobRes, List<ClusterNode> top) {
+ public ClusterNode failover(GridTaskSessionImpl taskSes, ComputeJobResult jobRes, List<ClusterNode> top,
+ Object affKey, String affCacheName) {
return getSpi(taskSes.getFailoverSpi()).failover(new GridFailoverContextImpl(taskSes, jobRes,
- ctx.loadBalancing()), top);
+ ctx.loadBalancing(), affKey, affCacheName), top);
}
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c9f9460a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
index 61bb62a..c725a42 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskWorker.java
@@ -34,7 +34,6 @@ import org.apache.ignite.internal.visor.util.*;
import org.apache.ignite.lang.*;
import org.apache.ignite.marshaller.*;
import org.apache.ignite.resources.*;
-import org.apache.ignite.spi.failover.always.*;
import org.jetbrains.annotations.*;
import org.jsr166.*;
@@ -569,9 +568,6 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
Collection<? extends ClusterNode> subgrid = top != null ? ctx.discovery().nodes(top) : ctx.discovery().allNodes();
- if (affKey != null)
- return Collections.singletonList(ctx.affinity().mapKeyToNode(affCache, affKey));
-
int size = subgrid.size();
if (size == 0)
@@ -782,9 +778,6 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
}
case FAILOVER: {
- if (jobRes != null && affKey != null)
- jobRes.getJobContext().setAttribute(AlwaysFailoverSpi.AFFINITY_CALL_FLAG, true);
-
if (!failover(res, jobRes, getTaskTopology()))
plc = null;
@@ -984,7 +977,7 @@ class GridTaskWorker<T, R> extends GridWorker implements GridTimeoutObject {
ctx.resource().invokeAnnotated(dep, jobRes.getJob(), ComputeJobBeforeFailover.class);
// Map to a new node.
- ClusterNode node = ctx.failover().failover(ses, jobRes, new ArrayList<>(top));
+ ClusterNode node = ctx.failover().failover(ses, jobRes, new ArrayList<>(top), affKey, affCache);
if (node == null) {
String msg = "Failed to failover a job to another node (failover SPI returned null) [job=" +
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c9f9460a/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java b/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java
index b0cae92..eddd9ea 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/failover/FailoverContext.java
@@ -20,6 +20,7 @@ package org.apache.ignite.spi.failover;
import org.apache.ignite.*;
import org.apache.ignite.cluster.*;
import org.apache.ignite.compute.*;
+import org.apache.ignite.lang.*;
import java.util.*;
@@ -52,4 +53,20 @@ public interface FailoverContext {
* @throws IgniteException If anything failed.
*/
public ClusterNode getBalancedNode(List<ClusterNode> top) throws IgniteException;
+
+ /**
+ * Gets affinity key for {@link IgniteCompute#affinityRun(String, Object, IgniteRunnable)}
+ * and {@link IgniteCompute#affinityCall(String, Object, IgniteCallable)}.
+ *
+ * @return Affinity key.
+ */
+ public Object affinityKey();
+
+ /**
+ * Returns affinity cache name {@link IgniteCompute#affinityRun(String, Object, IgniteRunnable)}
+ * and {@link IgniteCompute#affinityCall(String, Object, IgniteCallable)}.
+ *
+ * @return Cache name.
+ */
+ public String affinityCacheName();
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c9f9460a/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java b/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
index c5c0f18..ec07abb 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/failover/always/AlwaysFailoverSpi.java
@@ -99,14 +99,6 @@ public class AlwaysFailoverSpi extends IgniteSpiAdapter implements FailoverSpi,
*/
public static final String AFFINITY_CALL_ATTEMPT = "ignite:failover:affinitycallattempt";
- /**
- * Name of job context attribute containing affinity call flag for affinity call.
- *
- * @see org.apache.ignite.compute.ComputeJobContext
- */
- public static final String AFFINITY_CALL_FLAG = "ignite:failover:affinitycall";
-
-
/** Maximum attempts attribute key should be the same on all nodes. */
public static final String MAX_FAILOVER_ATTEMPT_ATTR = "gg:failover:maxattempts";
@@ -190,9 +182,7 @@ public class AlwaysFailoverSpi extends IgniteSpiAdapter implements FailoverSpi,
Collection<UUID> failedNodes = ctx.getJobResult().getJobContext().getAttribute(FAILED_NODE_LIST_ATTR);
- Boolean affCall = ctx.getJobResult().getJobContext().getAttribute(AFFINITY_CALL_FLAG);
-
- if (affCall != null && affCall) {
+ if (ctx.affinityKey() != null) {
Integer affCallAttempt = ctx.getJobResult().getJobContext().getAttribute(AFFINITY_CALL_ATTEMPT);
if (affCallAttempt == null)
@@ -208,7 +198,7 @@ public class AlwaysFailoverSpi extends IgniteSpiAdapter implements FailoverSpi,
else {
ctx.getJobResult().getJobContext().setAttribute(AFFINITY_CALL_ATTEMPT, affCallAttempt + 1);
- return top.get(0);
+ return ignite.affinity(ctx.affinityCacheName()).mapKeyToNode(ctx.affinityKey());
}
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c9f9460a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
index 38de9a1..80e558b 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
@@ -269,6 +269,8 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
System.out.println("Attempt=" + attempt);
+ System.out.println("RUN ON NODE: " + ignite.cluster().localNode().id());
+
assertEquals(ignite.affinity(NON_DFLT_CACHE_NAME).mapKeyToNode(key), ignite.cluster().localNode());
jobCtx.setAttribute("Attempt", attempt + 1);
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c9f9460a/modules/core/src/test/java/org/apache/ignite/spi/failover/GridFailoverTestContext.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/spi/failover/GridFailoverTestContext.java b/modules/core/src/test/java/org/apache/ignite/spi/failover/GridFailoverTestContext.java
index db64475..bfca83d 100644
--- a/modules/core/src/test/java/org/apache/ignite/spi/failover/GridFailoverTestContext.java
+++ b/modules/core/src/test/java/org/apache/ignite/spi/failover/GridFailoverTestContext.java
@@ -66,4 +66,14 @@ public class GridFailoverTestContext implements FailoverContext {
@Override public ClusterNode getBalancedNode(List<ClusterNode> grid) {
return grid.get(RAND.nextInt(grid.size()));
}
+
+ /** {@inheritDoc} */
+ @Override public Object affinityKey() {
+ return null;
+ }
+
+ /** {@inheritDoc} */
+ @Override public String affinityCacheName() {
+ return null;
+ }
}
[15/23] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/master' into ignite-1087
Posted by iv...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-1087
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/b50067ca
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/b50067ca
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/b50067ca
Branch: refs/heads/ignite-1087
Commit: b50067ca4e077b61babc4859eeb3cf0e8ea5a21b
Parents: f2511ff e3fba88
Author: sboikov <sb...@gridgain.com>
Authored: Fri Jul 10 09:37:18 2015 +0300
Committer: sboikov <sb...@gridgain.com>
Committed: Fri Jul 10 09:37:18 2015 +0300
----------------------------------------------------------------------
.../examples/ScalarCacheAffinityExample.scala | 2 +-
.../scalar/examples/ScalarCacheExample.scala | 2 +-
.../ScalarCachePopularNumbersExample.scala | 2 +-
.../examples/ScalarCacheQueryExample.scala | 2 +-
.../examples/ScalarSnowflakeSchemaExample.scala | 4 +-
.../java/org/apache/ignite/IgniteCache.java | 14 +-
.../org/apache/ignite/cache/CacheManager.java | 13 +-
.../apache/ignite/internal/IgniteKernal.java | 2 +-
.../discovery/GridDiscoveryManager.java | 23 +-
.../cache/DynamicCacheChangeRequest.java | 39 +-
.../processors/cache/GridCacheGateway.java | 4 +-
.../GridCachePartitionExchangeManager.java | 6 +-
.../processors/cache/GridCacheProcessor.java | 102 ++-
.../processors/cache/IgniteCacheProxy.java | 448 +++++++---
.../distributed/dht/GridDhtCacheEntry.java | 4 +-
.../GridDhtPartitionsExchangeFuture.java | 30 +-
.../datastreamer/DataStreamProcessor.java | 3 +
.../visor/cache/VisorCacheStopTask.java | 2 +-
.../affinity/IgniteClientNodeAffinityTest.java | 14 +-
.../IgniteFairAffinityDynamicCacheSelfTest.java | 3 +-
...cheStoreSessionListenerAbstractSelfTest.java | 111 ++-
.../GridCacheTxLoadFromStoreOnLockSelfTest.java | 34 +-
.../CacheMetricsForClusterGroupSelfTest.java | 10 +-
.../cache/CacheOffheapMapEntrySelfTest.java | 7 +-
.../cache/CacheStopAndDestroySelfTest.java | 859 +++++++++++++++++++
...eUsageMultinodeDynamicStartAbstractTest.java | 2 +-
...ProjectionForCachesOnDaemonNodeSelfTest.java | 2 +-
.../cache/IgniteDynamicCacheStartSelfTest.java | 140 +--
...teCacheClientNodePartitionsExchangeTest.java | 29 +-
...CacheLocalOffHeapAndSwapMetricsSelfTest.java | 2 +-
.../DataStreamerMultinodeCreateCacheTest.java | 14 +-
.../testsuites/IgniteCacheTestSuite4.java | 2 +
.../CacheConfigurationP2PTestClient.java | 4 +-
33 files changed, 1596 insertions(+), 339 deletions(-)
----------------------------------------------------------------------
[23/23] incubator-ignite git commit: Merge remote-tracking branch
'remotes/origin/master' into ignite-1087
Posted by iv...@apache.org.
Merge remote-tracking branch 'remotes/origin/master' into ignite-1087
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/3208e6f6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/3208e6f6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/3208e6f6
Branch: refs/heads/ignite-1087
Commit: 3208e6f6892458027e8ba04b84cb2573960e8cb5
Parents: 7e95c5f 3194415
Author: ivasilinets <iv...@gridgain.com>
Authored: Mon Jul 20 18:04:00 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Mon Jul 20 18:04:00 2015 +0300
----------------------------------------------------------------------
DEVNOTES.txt | 8 +
RELEASE_NOTES.txt | 2 +
assembly/LICENSE_FABRIC | 306 +++++
assembly/LICENSE_HADOOP | 259 ++++
assembly/NOTICE_FABRIC | 13 +
assembly/NOTICE_HADOOP | 12 +
assembly/dependencies-fabric.xml | 13 +
assembly/dependencies-hadoop.xml | 12 +
assembly/dependencies-visor-console.xml | 20 +-
assembly/release-base.xml | 10 -
assembly/release-fabric.xml | 12 +
assembly/release-hadoop.xml | 12 +
examples/pom.xml | 2 +-
modules/aop/licenses/aspectj-epl-license.txt | 69 -
modules/aop/pom.xml | 2 +-
modules/apache-license-gen/pom.xml | 48 +
.../src/main/resources/META-INF/licenses.txt.vm | 42 +
modules/aws/pom.xml | 2 +-
modules/clients/pom.xml | 2 +-
modules/cloud/pom.xml | 2 +-
modules/codegen/pom.xml | 2 +-
modules/core/licenses/jsr166-license.txt | 3 +
modules/core/licenses/snaptree-bsd-license.txt | 2 +-
modules/core/pom.xml | 2 +-
.../IgniteClientDisconnectedException.java | 61 +
.../java/org/apache/ignite/IgniteCluster.java | 8 +
.../apache/ignite/cache/CacheTypeMetadata.java | 53 +-
.../apache/ignite/internal/GridComponent.java | 18 +
.../ignite/internal/GridJobSiblingImpl.java | 2 +-
.../ignite/internal/GridKernalContext.java | 5 +
.../ignite/internal/GridKernalContextImpl.java | 31 +-
.../ignite/internal/GridKernalGateway.java | 46 +-
.../ignite/internal/GridKernalGatewayImpl.java | 85 +-
.../apache/ignite/internal/GridKernalState.java | 3 +
.../ignite/internal/GridPluginComponent.java | 11 +
...gniteClientDisconnectedCheckedException.java | 49 +
.../apache/ignite/internal/IgniteKernal.java | 234 +++-
.../cluster/IgniteClusterAsyncImpl.java | 5 +
.../internal/cluster/IgniteClusterImpl.java | 18 +
.../internal/managers/GridManagerAdapter.java | 19 +-
.../deployment/GridDeploymentCommunication.java | 2 +-
.../deployment/GridDeploymentManager.java | 95 +-
.../discovery/GridDiscoveryManager.java | 188 ++-
.../processors/GridProcessorAdapter.java | 11 +
.../affinity/GridAffinityAssignmentCache.java | 26 +-
.../cache/CacheOsConflictResolutionManager.java | 6 +
.../cache/DynamicCacheChangeBatch.java | 17 +
.../processors/cache/GridCacheAdapter.java | 27 +-
.../cache/GridCacheAffinityManager.java | 21 +-
.../cache/GridCacheConcurrentMap.java | 15 +-
.../processors/cache/GridCacheContext.java | 55 +-
.../processors/cache/GridCacheGateway.java | 116 +-
.../processors/cache/GridCacheIoManager.java | 8 +
.../processors/cache/GridCacheManager.java | 6 +
.../cache/GridCacheManagerAdapter.java | 6 +
.../processors/cache/GridCacheMvccManager.java | 43 +-
.../GridCachePartitionExchangeManager.java | 134 +-
.../processors/cache/GridCachePreloader.java | 5 +
.../cache/GridCachePreloaderAdapter.java | 5 +
.../processors/cache/GridCacheProcessor.java | 311 ++++-
.../cache/GridCacheSharedContext.java | 113 +-
.../cache/GridCacheSharedManager.java | 11 +-
.../cache/GridCacheSharedManagerAdapter.java | 20 +-
.../processors/cache/GridCacheUtils.java | 9 +
.../processors/cache/IgniteCacheFutureImpl.java | 11 +
.../processors/cache/IgniteCacheProxy.java | 59 +-
.../processors/cache/IgniteInternalCache.java | 1 +
.../CacheDataStructuresManager.java | 35 +
.../distributed/GridCacheTxFinishSync.java | 46 +
.../distributed/dht/GridDhtCacheAdapter.java | 14 +-
.../dht/GridDhtPartitionTopologyImpl.java | 24 +
.../distributed/dht/GridDhtTopologyFuture.java | 14 -
.../distributed/dht/GridDhtTxPrepareFuture.java | 9 +-
.../dht/GridPartitionedGetFuture.java | 13 +-
.../dht/atomic/GridDhtAtomicCache.java | 6 +-
.../dht/atomic/GridNearAtomicUpdateFuture.java | 31 +-
.../GridDhtPartitionsExchangeFuture.java | 31 +-
.../dht/preloader/GridDhtPreloader.java | 16 +-
.../distributed/near/GridNearCacheAdapter.java | 8 +
.../distributed/near/GridNearGetFuture.java | 13 +-
.../cache/dr/GridOsCacheDrManager.java | 7 +-
.../query/GridCacheDistributedQueryManager.java | 22 +
.../cache/query/GridCacheQueryAdapter.java | 11 +-
.../query/GridCacheQueryFutureAdapter.java | 2 +-
.../continuous/CacheContinuousQueryHandler.java | 5 +
.../transactions/IgniteTransactionsImpl.java | 59 +-
.../cache/transactions/IgniteTxManager.java | 23 +-
.../transactions/TransactionProxyImpl.java | 2 +-
.../cache/version/GridCacheVersionManager.java | 9 +-
.../clock/GridClockSyncProcessor.java | 6 +-
.../processors/cluster/ClusterProcessor.java | 11 +
.../continuous/GridContinuousHandler.java | 9 +-
.../continuous/GridContinuousProcessor.java | 127 +-
.../datastreamer/DataStreamProcessor.java | 24 +-
.../datastreamer/DataStreamerImpl.java | 90 +-
.../datastructures/DataStructuresProcessor.java | 33 +-
.../datastructures/GridCacheAtomicLongImpl.java | 33 +-
.../GridCacheAtomicReferenceImpl.java | 34 +-
.../GridCacheAtomicSequenceImpl.java | 33 +-
.../GridCacheAtomicStampedImpl.java | 33 +-
.../GridCacheCountDownLatchImpl.java | 51 +-
.../datastructures/GridCacheRemovable.java | 6 +-
.../datastructures/GridCacheSetImpl.java | 15 +-
.../datastructures/GridCacheSetProxy.java | 47 +-
.../processors/job/GridJobProcessor.java | 2 +-
.../internal/processors/job/GridJobWorker.java | 2 +-
.../processors/query/GridQueryIndexing.java | 7 +
.../processors/query/GridQueryProcessor.java | 10 +-
.../service/GridServiceProcessor.java | 45 +-
.../processors/service/GridServiceProxy.java | 13 +-
.../processors/task/GridTaskProcessor.java | 55 +-
.../processors/task/GridTaskWorker.java | 59 +-
.../ignite/internal/util/IgniteUtils.java | 30 +-
.../util/future/GridFutureChainListener.java | 4 -
.../internal/util/future/IgniteFutureImpl.java | 12 +-
.../shmem/IpcSharedMemoryClientEndpoint.java | 5 +-
.../ignite/internal/util/lang/GridFunc.java | 2 +
.../plugin/security/SecurityPermission.java | 7 +-
.../plugin/security/SecuritySubjectType.java | 3 +-
.../java/org/apache/ignite/spi/IgniteSpi.java | 15 +
.../org/apache/ignite/spi/IgniteSpiAdapter.java | 51 +-
.../communication/tcp/TcpCommunicationSpi.java | 356 ++++--
.../spi/discovery/DiscoverySpiDataExchange.java | 3 +-
.../ignite/spi/discovery/tcp/ClientImpl.java | 408 ++++--
.../ignite/spi/discovery/tcp/ServerImpl.java | 177 ++-
.../spi/discovery/tcp/TcpDiscoveryImpl.java | 9 +-
.../spi/discovery/tcp/TcpDiscoverySpi.java | 33 +-
.../tcp/internal/TcpDiscoveryNode.java | 19 +
.../messages/TcpDiscoveryAbstractMessage.java | 3 +
.../messages/TcpDiscoveryClientAckResponse.java | 64 +
.../messages/TcpDiscoveryHandshakeResponse.java | 14 +
.../spi/swapspace/file/FileSwapSpaceSpi.java | 2 +-
.../core/src/main/resources/ignite.properties | 2 +-
.../internal/GridUpdateNotifierSelfTest.java | 15 +-
.../IgniteClientReconnectAbstractTest.java | 363 ++++++
.../IgniteClientReconnectApiExceptionTest.java | 846 ++++++++++++
.../IgniteClientReconnectAtomicsTest.java | 672 ++++++++++
.../IgniteClientReconnectCacheTest.java | 1202 ++++++++++++++++++
.../IgniteClientReconnectCollectionsTest.java | 443 +++++++
.../IgniteClientReconnectComputeTest.java | 192 +++
...eClientReconnectContinuousProcessorTest.java | 372 ++++++
...IgniteClientReconnectDiscoveryStateTest.java | 123 ++
...niteClientReconnectFailoverAbstractTest.java | 231 ++++
.../IgniteClientReconnectFailoverTest.java | 227 ++++
.../IgniteClientReconnectServicesTest.java | 260 ++++
.../internal/IgniteClientReconnectStopTest.java | 106 ++
.../IgniteClientReconnectStreamerTest.java | 233 ++++
.../IgniteSlowClientDetectionSelfTest.java | 1 +
.../GridDeploymentManagerStopSelfTest.java | 7 +
.../cache/GridCacheAbstractFullApiSelfTest.java | 32 +
.../IgniteCacheAbstractStopBusySelfTest.java | 2 +-
.../cache/IgniteCacheDynamicStopSelfTest.java | 6 +-
.../cache/IgniteCacheNearLockValueSelfTest.java | 2 +
.../IgniteTxExceptionAbstractSelfTest.java | 1 +
.../GridCacheAbstractNodeRestartSelfTest.java | 12 +-
.../distributed/IgniteCache150ClientsTest.java | 1 +
.../IgniteCacheClientReconnectTest.java | 175 +++
.../IgniteCacheServerNodeConcurrentStart.java | 96 ++
.../IgniteCacheSystemTransactionsSelfTest.java | 2 +-
.../IgniteCachePutRetryAbstractSelfTest.java | 52 +-
...gniteCachePutRetryTransactionalSelfTest.java | 17 +-
...eAtomicInvalidPartitionHandlingSelfTest.java | 2 +-
...achePartitionedMultiNodeFullApiSelfTest.java | 4 +-
.../GridCacheReplicatedInvalidateSelfTest.java | 3 +-
...acheAtomicReplicatedNodeRestartSelfTest.java | 14 +-
.../loadtests/hashmap/GridCacheTestContext.java | 4 +-
.../tcp/TcpClientDiscoverySpiSelfTest.java | 562 +++++++-
.../tcp/TcpDiscoveryMultiThreadedTest.java | 140 +-
.../testframework/junits/GridAbstractTest.java | 5 +
.../multijvm/IgniteClusterProcessProxy.java | 5 +
.../testsuites/IgniteCacheTestSuite2.java | 2 +-
.../testsuites/IgniteCacheTestSuite4.java | 2 -
.../testsuites/IgniteClientNodesTestSuite.java | 42 +
.../IgniteClientReconnectTestSuite.java | 48 +
modules/extdata/p2p/pom.xml | 2 +-
.../extdata/uri/modules/uri-dependency/pom.xml | 6 +-
modules/extdata/uri/pom.xml | 26 +-
modules/gce/pom.xml | 2 +-
.../geospatial/licenses/jts-lgpl-license.txt | 165 ---
modules/geospatial/pom.xml | 2 +-
modules/hadoop/pom.xml | 2 +-
.../licenses/hibernate-lgpl-2.1-license.txt | 174 ---
modules/hibernate/pom.xml | 2 +-
modules/indexing/licenses/h2-epl-license.txt | 69 -
modules/indexing/pom.xml | 2 +-
.../processors/query/h2/IgniteH2Indexing.java | 5 +
.../query/h2/twostep/GridMergeIndex.java | 45 +-
.../h2/twostep/GridReduceQueryExecutor.java | 70 +-
...ClientReconnectCacheQueriesFailoverTest.java | 225 ++++
.../cache/IgniteClientReconnectQueriesTest.java | 427 +++++++
...dCacheAbstractReduceFieldsQuerySelfTest.java | 4 +
.../IgniteCacheWithIndexingTestSuite.java | 1 +
modules/jcl/pom.xml | 2 +-
modules/jta/licenses/jta-license.txt | 2 +
modules/jta/pom.xml | 2 +-
modules/kafka/pom.xml | 2 +-
modules/log4j/pom.xml | 2 +-
modules/mesos/licenses/jetty-epl-license.txt | 69 -
modules/mesos/pom.xml | 3 +-
.../apache/ignite/mesos/ClusterProperties.java | 14 +
.../apache/ignite/mesos/IgniteScheduler.java | 26 +-
modules/rest-http/pom.xml | 8 +-
.../scalar-2.10/licenses/scala-bsd-license.txt | 18 -
modules/scalar-2.10/pom.xml | 2 +-
modules/scalar/licenses/scala-bsd-license.txt | 18 -
modules/scalar/pom.xml | 2 +-
.../licenses/cron4j-lgpl-2.1-license.txt | 174 ---
modules/schedule/pom.xml | 2 +-
modules/schema-import/pom.xml | 2 +-
.../ignite/schema/ui/SchemaImportApp.java | 36 +-
modules/slf4j/licenses/sl4j-mit-license.txt | 21 -
modules/slf4j/pom.xml | 2 +-
.../spark-2.10/licenses/scala-bsd-license.txt | 18 -
modules/spark-2.10/pom.xml | 2 +-
modules/spark/licenses/scala-bsd-license.txt | 18 -
modules/spark/pom.xml | 2 +-
modules/spring/pom.xml | 2 +-
.../apache/ignite/cache/spring/SpringCache.java | 2 +-
.../ignite/cache/spring/SpringCacheManager.java | 22 +-
modules/ssh/licenses/jcraft-revised-bsd.txt | 28 -
modules/ssh/pom.xml | 2 +-
modules/tools/licenses/jodd-revised-bsd.txt | 21 -
modules/tools/pom.xml | 2 +-
.../urideploy/licenses/jtidy-mit-license.txt | 50 -
modules/urideploy/pom.xml | 8 +-
modules/visor-console-2.10/pom.xml | 2 +-
.../licenses/jline-bsd-license.txt | 18 -
.../licenses/scala-bsd-license.txt | 18 -
modules/visor-console/pom.xml | 2 +-
.../licenses/slf4j-mit-license.txt | 21 -
modules/visor-plugins/pom.xml | 2 +-
modules/web/pom.xml | 8 +-
modules/yardstick/pom.xml | 2 +-
modules/yarn/README.txt | 28 +
modules/yarn/licenses/apache-2.0.txt | 202 +++
modules/yarn/pom.xml | 101 ++
.../apache/ignite/yarn/ApplicationMaster.java | 400 ++++++
.../apache/ignite/yarn/ClusterProperties.java | 432 +++++++
.../org/apache/ignite/yarn/IgniteContainer.java | 84 ++
.../org/apache/ignite/yarn/IgniteProvider.java | 339 +++++
.../apache/ignite/yarn/IgniteYarnClient.java | 178 +++
.../org/apache/ignite/yarn/package-info.java | 22 +
.../ignite/yarn/utils/IgniteYarnUtils.java | 81 ++
.../main/resources/ignite-default-config.xml | 35 +
.../org/apache/ignite/IgniteYarnTestSuite.java | 38 +
.../yarn/IgniteApplicationMasterSelfTest.java | 532 ++++++++
parent/pom.xml | 55 +
pom.xml | 6 +-
248 files changed, 13969 insertions(+), 2164 deletions(-)
----------------------------------------------------------------------