Repository: incubator-ignite Updated Branches: refs/heads/ignite-648 92cde7fe1 -> c8c1600a5
ignite-648: fix connection between local jvm node and remote Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/c8c1600a Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/c8c1600a Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/c8c1600a Branch: refs/heads/ignite-648 Commit: c8c1600a5f504544d87f1f440c6db28bd35982ab Parents: 92cde7f Author: Artem Shutak <ashu...@gridgain.com> Authored: Tue Apr 14 19:06:48 2015 +0300 Committer: Artem Shutak <ashu...@gridgain.com> Committed: Tue Apr 14 19:06:48 2015 +0300 ---------------------------------------------------------------------- .../cache/GridCacheAbstractFullApiSelfTest.java | 2 +- ...CachePartitionedMultiJvmFullApiSelfTest.java | 62 ++-- .../cache/multijvm/IgniteExProxy.java | 328 ++++++++++++++++++ .../cache/multijvm/IgniteNodeRunner.java | 12 +- .../cache/multijvm/IgniteProcessProxy.java | 345 ------------------- .../testframework/junits/GridAbstractTest.java | 6 +- 6 files changed, 372 insertions(+), 383 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c8c1600a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java index 77405ee..0adf4c0 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAbstractFullApiSelfTest.java @@ -161,7 +161,7 @@ public abstract class GridCacheAbstractFullApiSelfTest extends GridCacheAbstract Ignite ignite; if (isMultiJvm()) - ignite = IgniteProcessProxy.grid(entry.getKey()); + ignite = IgniteExProxy.grid(entry.getKey()); else ignite = IgnitionEx.grid(entry.getKey()); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c8c1600a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/GridCachePartitionedMultiJvmFullApiSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/GridCachePartitionedMultiJvmFullApiSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/GridCachePartitionedMultiJvmFullApiSelfTest.java index 753c13c..54f1c20 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/GridCachePartitionedMultiJvmFullApiSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/GridCachePartitionedMultiJvmFullApiSelfTest.java @@ -22,8 +22,6 @@ import org.apache.ignite.configuration.*; import org.apache.ignite.internal.*; import org.apache.ignite.internal.processors.cache.distributed.near.*; import org.apache.ignite.internal.processors.resource.*; -import org.apache.ignite.spi.discovery.tcp.ipfinder.*; -import org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.*; import java.util.*; @@ -31,54 +29,62 @@ import java.util.*; * TODO: Add class description. */ public class GridCachePartitionedMultiJvmFullApiSelfTest extends GridCachePartitionedMultiNodeFullApiSelfTest { - /** VM ip finder for TCP discovery. */ - public static final TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryMulticastIpFinder(){{ - setAddresses(Collections.singleton("127.0.0.1:47500..47509")); - }}; - /** Proces name to process map. */ - private final Map<String, IgniteProcessProxy> ignites = new HashMap<>(); + private final Map<String, IgniteExProxy> ignites = new HashMap<>(); + /** {@inheritDoc} */ + @Override protected void beforeTestsStarted() throws Exception { + super.beforeTestsStarted(); + } + + /** {@inheritDoc} */ + @Override protected void afterTestsStopped() throws Exception { + for (IgniteExProxy ignite : ignites.values()) + ignite.getProcess().kill(); + + ignites.clear(); + + super.afterTestsStopped(); + } + + /** {@inheritDoc} */ @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception { -// IgniteConfiguration cfg = super.getConfiguration(gridName); -// -// ((TcpDiscoverySpi)cfg.getDiscoverySpi()).setIpFinder(ipFinder); + IgniteConfiguration rmtCfg = IgniteNodeRunner.configuration(null); + + rmtCfg.setGridName(gridName); - return IgniteNodeRunner.configuration(null); // TODO: change. + return rmtCfg; // TODO: change. } + /** {@inheritDoc} */ @Override protected CacheConfiguration cacheConfiguration(String gridName) throws Exception { return super.cacheConfiguration(gridName); // TODO: CODE: implement. } + /** {@inheritDoc} */ @Override protected int gridCount() { - return 1; + return 2; } + /** {@inheritDoc} */ protected boolean isMultiJvm() { return true; } - @Override protected void afterTestsStopped() throws Exception { - for (IgniteProcessProxy ignite : ignites.values()) - ignite.getProcess().kill(); - - ignites.clear(); - - super.afterTestsStopped(); - } - /** {@inheritDoc} */ protected Ignite startGrid(String gridName, GridSpringResourceContext ctx) throws Exception { + if (gridName.endsWith("0")) + return super.startGrid(gridName, ctx); + startingGrid.set(gridName); try { IgniteConfiguration cfg = optimize(getConfiguration(gridName)); - IgniteProcessProxy proxy = new IgniteProcessProxy(cfg, log); - + IgniteExProxy proxy = new IgniteExProxy(cfg, log); + ignites.put(gridName, proxy); - + return proxy; } finally { @@ -86,9 +92,13 @@ public class GridCachePartitionedMultiJvmFullApiSelfTest extends GridCachePartit } } + /** {@inheritDoc} */ @Override protected IgniteEx grid(int idx) { + if (idx == 0) + return super.grid(idx); + String name = getTestGridName(idx); - + return ignites.get(name); } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c8c1600a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteExProxy.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteExProxy.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteExProxy.java new file mode 100644 index 0000000..7dab762 --- /dev/null +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteExProxy.java @@ -0,0 +1,328 @@ +/* + * 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.multijvm; + +import org.apache.ignite.*; +import org.apache.ignite.cache.affinity.*; +import org.apache.ignite.cluster.*; +import org.apache.ignite.configuration.*; +import org.apache.ignite.internal.*; +import org.apache.ignite.internal.cluster.*; +import org.apache.ignite.internal.processors.cache.*; +import org.apache.ignite.internal.processors.hadoop.*; +import org.apache.ignite.internal.util.*; +import org.apache.ignite.internal.util.typedef.*; +import org.apache.ignite.lang.*; +import org.apache.ignite.plugin.*; +import org.jetbrains.annotations.*; + +import java.util.*; +import java.util.concurrent.*; + +/** + * TODO: Add class description. + * + * @author @java.author + * @version @java.version + */ +public class IgniteExProxy implements IgniteEx { + private static final Map<String, IgniteExProxy> gridProxies = new HashMap<>(); + + private final GridJavaProcess proc; + private final IgniteConfiguration cfg; + private final IgniteLogger log; + private final UUID id = UUID.randomUUID(); + + public IgniteExProxy(final IgniteConfiguration cfg, final IgniteLogger log) throws Exception { + this.cfg = cfg; + this.log = log; + + String cfgAsString = IgniteNodeRunner.asParams(id, cfg); + + proc = GridJavaProcess.exec( + IgniteNodeRunner.class, + cfgAsString, // Params. + log, + // Optional closure to be called each time wrapped process prints line to system.out or system.err. + new IgniteInClosure<String>() { + @Override public void apply(String s) { + log.info("[" + cfg.getGridName() + "] " + s); + } + }, + null, + Collections.<String>emptyList(), // JVM Args. + System.getProperty("surefire.test.class.path") + ); + + Thread.sleep(3_000); + + gridProxies.put(cfg.getGridName(), this); + } + + @Override public String name() { + return cfg.getGridName(); + } + + @Override public IgniteLogger log() { + return log; + } + + @Override public IgniteConfiguration configuration() { + return cfg; + } + + @Override public <K extends GridCacheUtilityKey, V> GridCacheProjectionEx<K, V> utilityCache() { + return null; // TODO: CODE: implement. + } + + @Nullable @Override public <K, V> GridCache<K, V> cachex(@Nullable String name) { + return null; // TODO: CODE: implement. + } + + @Nullable @Override public <K, V> GridCache<K, V> cachex() { + return null; // TODO: CODE: implement. + } + + @Override public Collection<GridCache<?, ?>> cachesx(@Nullable IgnitePredicate<? super GridCache<?, ?>>... p) { + return null; // TODO: CODE: implement. + } + + @Override public boolean eventUserRecordable(int type) { + return false; // TODO: CODE: implement. + } + + @Override public boolean allEventsUserRecordable(int[] types) { + return false; // TODO: CODE: implement. + } + + @Override public boolean isJmxRemoteEnabled() { + return false; // TODO: CODE: implement. + } + + @Override public boolean isRestartEnabled() { + return false; // TODO: CODE: implement. + } + + @Nullable @Override public IgniteFileSystem igfsx(@Nullable String name) { + return null; // TODO: CODE: implement. + } + + @Override public Hadoop hadoop() { + return null; // TODO: CODE: implement. + } + + @Override public IgniteClusterEx cluster() { + return (IgniteClusterEx)Ignition.ignite().cluster(); + } + + @Nullable @Override public String latestVersion() { + return null; // TODO: CODE: implement. + } + + @Override public ClusterNode localNode() { + return null; // TODO: CODE: implement. + } + + @Override public GridKernalContext context() { + return null; // TODO: CODE: implement. + } + + @Override public IgniteCompute compute() { + return null; // TODO: CODE: implement. + } + + @Override public IgniteCompute compute(ClusterGroup grp) { + return null; // TODO: CODE: implement. + } + + @Override public IgniteMessaging message() { + return null; // TODO: CODE: implement. + } + + @Override public IgniteMessaging message(ClusterGroup grp) { + return null; // TODO: CODE: implement. + } + + @Override public IgniteEvents events() { + return null; // TODO: CODE: implement. + } + + @Override public IgniteEvents events(ClusterGroup grp) { + return null; // TODO: CODE: implement. + } + + @Override public IgniteServices services() { + return null; // TODO: CODE: implement. + } + + @Override public IgniteServices services(ClusterGroup grp) { + return null; // TODO: CODE: implement. + } + + @Override public ExecutorService executorService() { + return null; // TODO: CODE: implement. + } + + @Override public ExecutorService executorService(ClusterGroup grp) { + return null; // TODO: CODE: implement. + } + + @Override public IgniteProductVersion version() { + return null; // TODO: CODE: implement. + } + + @Override public IgniteScheduler scheduler() { + return null; // TODO: CODE: implement. + } + + @Override public <K, V> IgniteCache<K, V> createCache(CacheConfiguration<K, V> cacheCfg) { + return null; // TODO: CODE: implement. + } + + @Override public <K, V> IgniteCache<K, V> createCache(String cacheName) { + return null; // TODO: CODE: implement. + } + + @Override public <K, V> IgniteCache<K, V> getOrCreateCache(CacheConfiguration<K, V> cacheCfg) { + return null; // TODO: CODE: implement. + } + + @Override public <K, V> IgniteCache<K, V> getOrCreateCache(String cacheName) { + return null; // TODO: CODE: implement. + } + + @Override public <K, V> void addCacheConfiguration(CacheConfiguration<K, V> cacheCfg) { + // TODO: CODE: implement. + } + + @Override public <K, V> IgniteCache<K, V> createCache(CacheConfiguration<K, V> cacheCfg, + NearCacheConfiguration<K, V> nearCfg) { + return null; // TODO: CODE: implement. + } + + @Override public <K, V> IgniteCache<K, V> getOrCreateCache(CacheConfiguration<K, V> cacheCfg, + NearCacheConfiguration<K, V> nearCfg) { + return null; // TODO: CODE: implement. + } + + @Override + public <K, V> IgniteCache<K, V> createNearCache(@Nullable String cacheName, NearCacheConfiguration<K, V> nearCfg) { + return null; // TODO: CODE: implement. + } + + @Override public <K, V> IgniteCache<K, V> getOrCreateNearCache(@Nullable String cacheName, + NearCacheConfiguration<K, V> nearCfg) { + return null; // TODO: CODE: implement. + } + + @Override public void destroyCache(String cacheName) { + // TODO: CODE: implement. + } + + @Override public <K, V> IgniteCache<K, V> cache(@Nullable final String name) { + Ignite ignite = Ignition.ignite(); + + ClusterGroup grp = ignite.cluster().forNodeId(id); + + return ignite.compute(grp).apply(new C1<Set<String>, IgniteCache<K,V>>() { + @Override public IgniteCache<K,V> apply(Set<String> objects) { + X.println(">>>>> Cache"); + + return Ignition.ignite().cache(name); + } + }, Collections.<String>emptySet()); + } + + @Override public IgniteTransactions transactions() { + return null; // TODO: CODE: implement. + } + + @Override public <K, V> IgniteDataStreamer<K, V> dataStreamer(@Nullable String cacheName) { + return null; // TODO: CODE: implement. + } + + @Override public IgniteFileSystem fileSystem(String name) { + return null; // TODO: CODE: implement. + } + + @Override public Collection<IgniteFileSystem> fileSystems() { + return null; // TODO: CODE: implement. + } + + @Override + public IgniteAtomicSequence atomicSequence(String name, long initVal, boolean create) throws IgniteException { + return null; // TODO: CODE: implement. + } + + @Override public IgniteAtomicLong atomicLong(String name, long initVal, boolean create) throws IgniteException { + return null; // TODO: CODE: implement. + } + + @Override public <T> IgniteAtomicReference<T> atomicReference(String name, @Nullable T initVal, + boolean create) throws IgniteException { + return null; // TODO: CODE: implement. + } + + @Override + public <T, S> IgniteAtomicStamped<T, S> atomicStamped(String name, @Nullable T initVal, @Nullable S initStamp, + boolean create) throws IgniteException { + return null; // TODO: CODE: implement. + } + + @Override public IgniteCountDownLatch countDownLatch(String name, int cnt, boolean autoDel, + boolean create) throws IgniteException { + return null; // TODO: CODE: implement. + } + + @Override public <T> IgniteQueue<T> queue(String name, int cap, + @Nullable CollectionConfiguration cfg) throws IgniteException { + return null; // TODO: CODE: implement. + } + + @Override public <T> IgniteSet<T> set(String name, @Nullable CollectionConfiguration cfg) throws IgniteException { + return null; // TODO: CODE: implement. + } + + @Override public <T extends IgnitePlugin> T plugin(String name) throws PluginNotFoundException { + return null; // TODO: CODE: implement. + } + + @Override public void close() throws IgniteException { + // TODO: CODE: implement. + } + + @Override public <K> Affinity<K> affinity(String cacheName) { + return null; // TODO: CODE: implement. + } + + public GridJavaProcess getProcess() { + return proc; + } + + public static Ignite grid(@Nullable String name) { +// IgniteNamedInstance grid = name != null ? grids.get(name) : dfltGrid; + + Ignite res = gridProxies.get(name); + + if (res == null) + throw new IgniteIllegalStateException("Grid instance was not properly started " + + "or was already stopped: " + name); + + return res; + } +} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c8c1600a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteNodeRunner.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteNodeRunner.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteNodeRunner.java index e69f9bc..5a75222 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteNodeRunner.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteNodeRunner.java @@ -71,26 +71,18 @@ public class IgniteNodeRunner { public static IgniteConfiguration configuration(String[] args) { IgniteConfiguration cfg = new IgniteConfiguration(); + cfg.setLocalHost("127.0.0.1"); + cfg.setNodeId((args != null && args.length >= 1) ? UUID.fromString(args[0]) : null); //------- TcpDiscoverySpi disco = new TcpDiscoverySpi(); -// disco.setMaxMissedHeartbeats(Integer.MAX_VALUE); - disco.setIpFinder(ipFinder); -// if (isDebug()) -// disco.setAckTimeout(Integer.MAX_VALUE); - cfg.setDiscoverySpi(disco); cfg.setMarshaller(new OptimizedMarshaller(false)); -// if (offHeapValues()) -// cfg.setSwapSpaceSpi(new GridTestSwapSpaceSpi()); - -// cfg.getTransactionConfiguration().setTxSerializableEnabled(true); - return cfg; } http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c8c1600a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteProcessProxy.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteProcessProxy.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteProcessProxy.java deleted file mode 100644 index a38ebd1..0000000 --- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteProcessProxy.java +++ /dev/null @@ -1,345 +0,0 @@ -/* - * 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.multijvm; - -import org.apache.ignite.*; -import org.apache.ignite.cache.affinity.*; -import org.apache.ignite.cluster.*; -import org.apache.ignite.configuration.*; -import org.apache.ignite.internal.*; -import org.apache.ignite.internal.cluster.*; -import org.apache.ignite.internal.processors.cache.*; -import org.apache.ignite.internal.processors.hadoop.*; -import org.apache.ignite.internal.util.*; -import org.apache.ignite.internal.util.typedef.*; -import org.apache.ignite.lang.*; -import org.apache.ignite.plugin.*; -import org.jetbrains.annotations.*; - -import java.util.*; -import java.util.concurrent.*; - -/** - * TODO: Add class description. - * - * @author @java.author - * @version @java.version - */ -public class IgniteProcessProxy implements IgniteEx { - private static final Map<String, IgniteProcessProxy> gridProxies = new HashMap<>(); - - private final GridJavaProcess proc; - private final IgniteConfiguration cfg; - private final IgniteLogger log; - private final UUID id = UUID.randomUUID();// TODO send. - - public IgniteProcessProxy(final IgniteConfiguration cfg, final IgniteLogger log) throws Exception { - this.cfg = cfg; - this.log = log; - - String cfgAsString = IgniteNodeRunner.asParams(id, cfg); - - proc = GridJavaProcess.exec( - IgniteNodeRunner.class, - cfgAsString, // Params. - log, - // Optional closure to be called each time wrapped process prints line to system.out or system.err. - new IgniteInClosure<String>() { - @Override public void apply(String s) { - log.info("[" + cfg.getGridName() + "] " + s); - } - }, - null, - Collections.<String>emptyList(), // JVM Args. - System.getProperty("surefire.test.class.path") - ); - - Thread.sleep(3_000); - - gridProxies.put(cfg.getGridName(), this); - } - - @Override public String name() { - return cfg.getGridName(); - } - - @Override public IgniteLogger log() { - return log; - } - - @Override public IgniteConfiguration configuration() { - return cfg; - } - - @Override public <K extends GridCacheUtilityKey, V> GridCacheProjectionEx<K, V> utilityCache() { - return null; // TODO: CODE: implement. - } - - @Nullable @Override public <K, V> GridCache<K, V> cachex(@Nullable String name) { - return null; // TODO: CODE: implement. - } - - @Nullable @Override public <K, V> GridCache<K, V> cachex() { - return null; // TODO: CODE: implement. - } - - @Override public Collection<GridCache<?, ?>> cachesx(@Nullable IgnitePredicate<? super GridCache<?, ?>>... p) { - return null; // TODO: CODE: implement. - } - - @Override public boolean eventUserRecordable(int type) { - return false; // TODO: CODE: implement. - } - - @Override public boolean allEventsUserRecordable(int[] types) { - return false; // TODO: CODE: implement. - } - - @Override public boolean isJmxRemoteEnabled() { - return false; // TODO: CODE: implement. - } - - @Override public boolean isRestartEnabled() { - return false; // TODO: CODE: implement. - } - - @Nullable @Override public IgniteFileSystem igfsx(@Nullable String name) { - return null; // TODO: CODE: implement. - } - - @Override public Hadoop hadoop() { - return null; // TODO: CODE: implement. - } - - @Override public IgniteClusterEx cluster() { -// Ignition.setClientMode(true); - - // TODO cfg. - try(Ignite ignite = Ignition.start(IgniteNodeRunner.configuration(null))) { - // TODO - ClusterGroup grp = ignite.cluster().forNodeId(id); - - return ignite.compute(grp).apply(new C1<Set<String>, IgniteClusterEx>() { - @Override public IgniteClusterEx apply(Set<String> objects) { - X.println(">>>>> Cluster 1"); - Ignite ignite1 = Ignition.ignite(); - X.println(">>>>> Cluster 2"); - IgniteCluster cluster = ignite1.cluster(); - X.println(">>>>> Cluster 3"); - IgniteClusterEx cluster1 = (IgniteClusterEx)cluster; - X.println(">>>>> Cluster 4"); - return cluster1; - } - }, Collections.<String>emptySet()); - } - } - - @Nullable @Override public String latestVersion() { - return null; // TODO: CODE: implement. - } - - @Override public ClusterNode localNode() { - return null; // TODO: CODE: implement. - } - - @Override public GridKernalContext context() { - return null; // TODO: CODE: implement. - } - - @Override public IgniteCompute compute() { - return null; // TODO: CODE: implement. - } - - @Override public IgniteCompute compute(ClusterGroup grp) { - return null; // TODO: CODE: implement. - } - - @Override public IgniteMessaging message() { - return null; // TODO: CODE: implement. - } - - @Override public IgniteMessaging message(ClusterGroup grp) { - return null; // TODO: CODE: implement. - } - - @Override public IgniteEvents events() { - return null; // TODO: CODE: implement. - } - - @Override public IgniteEvents events(ClusterGroup grp) { - return null; // TODO: CODE: implement. - } - - @Override public IgniteServices services() { - return null; // TODO: CODE: implement. - } - - @Override public IgniteServices services(ClusterGroup grp) { - return null; // TODO: CODE: implement. - } - - @Override public ExecutorService executorService() { - return null; // TODO: CODE: implement. - } - - @Override public ExecutorService executorService(ClusterGroup grp) { - return null; // TODO: CODE: implement. - } - - @Override public IgniteProductVersion version() { - return null; // TODO: CODE: implement. - } - - @Override public IgniteScheduler scheduler() { - return null; // TODO: CODE: implement. - } - - @Override public <K, V> IgniteCache<K, V> createCache(CacheConfiguration<K, V> cacheCfg) { - return null; // TODO: CODE: implement. - } - - @Override public <K, V> IgniteCache<K, V> createCache(String cacheName) { - return null; // TODO: CODE: implement. - } - - @Override public <K, V> IgniteCache<K, V> getOrCreateCache(CacheConfiguration<K, V> cacheCfg) { - return null; // TODO: CODE: implement. - } - - @Override public <K, V> IgniteCache<K, V> getOrCreateCache(String cacheName) { - return null; // TODO: CODE: implement. - } - - @Override public <K, V> void addCacheConfiguration(CacheConfiguration<K, V> cacheCfg) { - // TODO: CODE: implement. - } - - @Override public <K, V> IgniteCache<K, V> createCache(CacheConfiguration<K, V> cacheCfg, - NearCacheConfiguration<K, V> nearCfg) { - return null; // TODO: CODE: implement. - } - - @Override public <K, V> IgniteCache<K, V> getOrCreateCache(CacheConfiguration<K, V> cacheCfg, - NearCacheConfiguration<K, V> nearCfg) { - return null; // TODO: CODE: implement. - } - - @Override - public <K, V> IgniteCache<K, V> createNearCache(@Nullable String cacheName, NearCacheConfiguration<K, V> nearCfg) { - return null; // TODO: CODE: implement. - } - - @Override public <K, V> IgniteCache<K, V> getOrCreateNearCache(@Nullable String cacheName, - NearCacheConfiguration<K, V> nearCfg) { - return null; // TODO: CODE: implement. - } - - @Override public void destroyCache(String cacheName) { - // TODO: CODE: implement. - } - - @Override public <K, V> IgniteCache<K, V> cache(@Nullable String name) { - Ignition.setClientMode(true); - - try(Ignite ignite = Ignition.start(cfg)) { - return ignite.compute(ignite.cluster().forNodeId(id)).apply(new C1<Set<?>, IgniteCache<K,V>>() { - @Override public IgniteCache<K, V> apply(Set<?> objects) { - return Ignition.ignite().cache(null); - } - }, Collections.emptySet()); - } - } - - @Override public IgniteTransactions transactions() { - return null; // TODO: CODE: implement. - } - - @Override public <K, V> IgniteDataStreamer<K, V> dataStreamer(@Nullable String cacheName) { - return null; // TODO: CODE: implement. - } - - @Override public IgniteFileSystem fileSystem(String name) { - return null; // TODO: CODE: implement. - } - - @Override public Collection<IgniteFileSystem> fileSystems() { - return null; // TODO: CODE: implement. - } - - @Override - public IgniteAtomicSequence atomicSequence(String name, long initVal, boolean create) throws IgniteException { - return null; // TODO: CODE: implement. - } - - @Override public IgniteAtomicLong atomicLong(String name, long initVal, boolean create) throws IgniteException { - return null; // TODO: CODE: implement. - } - - @Override public <T> IgniteAtomicReference<T> atomicReference(String name, @Nullable T initVal, - boolean create) throws IgniteException { - return null; // TODO: CODE: implement. - } - - @Override - public <T, S> IgniteAtomicStamped<T, S> atomicStamped(String name, @Nullable T initVal, @Nullable S initStamp, - boolean create) throws IgniteException { - return null; // TODO: CODE: implement. - } - - @Override public IgniteCountDownLatch countDownLatch(String name, int cnt, boolean autoDel, - boolean create) throws IgniteException { - return null; // TODO: CODE: implement. - } - - @Override public <T> IgniteQueue<T> queue(String name, int cap, - @Nullable CollectionConfiguration cfg) throws IgniteException { - return null; // TODO: CODE: implement. - } - - @Override public <T> IgniteSet<T> set(String name, @Nullable CollectionConfiguration cfg) throws IgniteException { - return null; // TODO: CODE: implement. - } - - @Override public <T extends IgnitePlugin> T plugin(String name) throws PluginNotFoundException { - return null; // TODO: CODE: implement. - } - - @Override public void close() throws IgniteException { - // TODO: CODE: implement. - } - - @Override public <K> Affinity<K> affinity(String cacheName) { - return null; // TODO: CODE: implement. - } - - public GridJavaProcess getProcess() { - return proc; - } - - public static Ignite grid(@Nullable String name) { -// IgniteNamedInstance grid = name != null ? grids.get(name) : dfltGrid; - - Ignite res = gridProxies.get(name); - - if (res == null) - throw new IgniteIllegalStateException("Grid instance was not properly started " + - "or was already stopped: " + name); - - return res; - } -} http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/c8c1600a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java index a6ada3d..6be9953 100644 --- a/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java +++ b/modules/core/src/test/java/org/apache/ignite/testframework/junits/GridAbstractTest.java @@ -23,6 +23,7 @@ import org.apache.ignite.cluster.*; import org.apache.ignite.configuration.*; import org.apache.ignite.events.*; import org.apache.ignite.internal.*; +import org.apache.ignite.internal.cluster.*; import org.apache.ignite.internal.processors.resource.*; import org.apache.ignite.internal.util.*; import org.apache.ignite.internal.util.typedef.*; @@ -590,7 +591,10 @@ public abstract class GridAbstractTest extends TestCase { boolean topOk = true; for (int i = 0; i < cnt; i++) { - if (cnt != grid(i).cluster().nodes().size()) { + IgniteEx grid = grid(i); + IgniteClusterEx cluster = grid.cluster(); + Collection<ClusterNode> nodes = cluster.nodes(); + if (cnt != nodes.size()) { U.warn(log, "Grid size is incorrect (will re-run check in 1000 ms) " + "[name=" + grid(i).name() + ", size=" + grid(i).cluster().nodes().size() + ']');