You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2015/05/07 15:37:33 UTC
incubator-ignite git commit: # ignite-648: opt marhsaller 2 (tmp
commit)
Repository: incubator-ignite
Updated Branches:
refs/heads/ignite-648-optmarsh2 [created] ef89e85da
# ignite-648: opt marhsaller 2 (tmp commit)
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/ef89e85d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/ef89e85d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/ef89e85d
Branch: refs/heads/ignite-648-optmarsh2
Commit: ef89e85dad3452e80430e19cdec892ede2668eaa
Parents: e11b6b8
Author: Artem Shutak <as...@gridgain.com>
Authored: Thu May 7 16:37:34 2015 +0300
Committer: Artem Shutak <as...@gridgain.com>
Committed: Thu May 7 16:37:34 2015 +0300
----------------------------------------------------------------------
.../cache/multijvm/FileMarshaller.java | 39 ++++++++++++++++
...CachePartitionedMultiJvmFullApiSelfTest.java | 10 ++++
.../cache/multijvm/IgniteExProcessProxy.java | 2 +
.../cache/multijvm/IgniteNodeRunner.java | 49 +++++++++++---------
4 files changed, 77 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/ef89e85d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/FileMarshaller.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/FileMarshaller.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/FileMarshaller.java
new file mode 100644
index 0000000..e52b44e
--- /dev/null
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/FileMarshaller.java
@@ -0,0 +1,39 @@
+/*
+ * 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.configuration.*;
+
+import java.io.*;
+
+/**
+ * TODO: Add class description.
+ */
+public class FileMarshaller {
+ public static void toFile(Ignite grid, Object cfg) throws FileNotFoundException, IgniteCheckedException {
+ grid.configuration().getMarshaller().marshal(cfg,
+ new BufferedOutputStream(new FileOutputStream(IgniteNodeRunner.CONFIGURATION_TMP_FILE)));
+ }
+
+ public static IgniteConfiguration fromFile(Ignite grid) throws FileNotFoundException, IgniteCheckedException {
+ return grid.configuration().getMarshaller().unmarshal(
+ new BufferedInputStream(new FileInputStream(IgniteNodeRunner.CONFIGURATION_TMP_FILE)),
+ null);
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/ef89e85d/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 336949a..1905cfd 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
@@ -27,4 +27,14 @@ public class GridCachePartitionedMultiJvmFullApiSelfTest extends GridCachePartit
protected boolean isMultiJvm() {
return true;
}
+
+ @Override protected int gridCount() {
+ return 2;
+ }
+
+ @Override protected void beforeTest() throws Exception {
+ super.beforeTest();
+
+ IgniteExProcessProxy.killAll();
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/ef89e85d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteExProcessProxy.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteExProcessProxy.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteExProcessProxy.java
index 469e425..c326010 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteExProcessProxy.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/multijvm/IgniteExProcessProxy.java
@@ -71,6 +71,8 @@ public class IgniteExProcessProxy implements IgniteEx {
this.locJvmGrid = locJvmGrid;
this.log = log.getLogger("jvm-" + id);
+ FileMarshaller.toFile(locJvmGrid, cfg);
+
IgniteNodeRunner.storeToFile(cfg.getCacheConfiguration()[0]);
List<String> jvmArgs = U.jvmArgs();
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/ef89e85d/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 32f33dc..987fa0a 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
@@ -39,8 +39,8 @@ public class IgniteNodeRunner {
public static final TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryMulticastIpFinder();
/** */
- private static final String CACHE_CONFIGURATION_TMP_FILE = System.getProperty("java.io.tmpdir") +
- File.separator + "cacheConfiguration.tmp";
+ public static final String CONFIGURATION_TMP_FILE = System.getProperty("java.io.tmpdir") +
+ File.separator + "igniteConfiguration.tmp";
/**
* Starts {@link Ignite} instance accorging to given arguments.
@@ -51,10 +51,18 @@ public class IgniteNodeRunner {
public static void main(String[] args) throws Exception {
try {
X.println(GridJavaProcess.PID_MSG_PREFIX + U.jvmPid());
-
X.println("Starting Ignite Node... Args" + Arrays.toString(args));
- IgniteConfiguration cfg = configuration(args);
+ TcpDiscoverySpi disco = new TcpDiscoverySpi();
+ disco.setIpFinder(ipFinder);
+
+ Ignite tmpNode = Ignition.start(configuration("fake-grid", null));
+
+ X.println(">>>> tmpNode started");
+
+ IgniteConfiguration cfg = FileMarshaller.fromFile(tmpNode);
+
+ X.println(">>>> Cfg was gotten");
Ignition.start(cfg);
}
@@ -86,32 +94,27 @@ public class IgniteNodeRunner {
final UUID nodeId = UUID.fromString(args[0]);
final String gridName = args[1];
+ return configuration(gridName, nodeId);
+ }
+
+ /**
+ * @param gridName
+ * @param nodeId
+ * @return Ignite configuration.
+ * @throws Exception If failed.
+ */
+ private static IgniteConfiguration configuration(String gridName, UUID nodeId) throws Exception {
// Configuration.
IgniteConfiguration cfg = GridAbstractTest.getConfiguration0(gridName, new IgniteTestResources(),
GridCachePartitionedMultiJvmFullApiSelfTest.class, false);
TcpDiscoverySpi disco = new TcpDiscoverySpi();
-
-// disco.setMaxMissedHeartbeats(Integer.MAX_VALUE);
-
disco.setIpFinder(ipFinder);
-
-// if (isDebug())
-// disco.setAckTimeout(Integer.MAX_VALUE);
-
cfg.setDiscoverySpi(disco);
- cfg.setCacheConfiguration(cacheConfiguration());
-
cfg.setMarshaller(new OptimizedMarshaller(false));
-//// ----------------
-//// if (offHeapValues())
-//// cfg.setSwapSpaceSpi(new GridTestSwapSpaceSpi());
-//// ----------------
-// cfg.getTransactionConfiguration().setTxSerializableEnabled(true);
-//
-//// ---------------
-// Special.
+
+// Special.
cfg.setLocalHost("127.0.0.1");
cfg.setIncludeProperties();
@@ -128,7 +131,7 @@ public class IgniteNodeRunner {
* @throws IOException If exception.
*/
public static void storeToFile(CacheConfiguration cc) throws IOException {
- File ccfgTmpFile = new File(CACHE_CONFIGURATION_TMP_FILE);
+ File ccfgTmpFile = new File(CONFIGURATION_TMP_FILE);
// TODO: add file created check (and delete the file after tests).
boolean created = ccfgTmpFile.createNewFile();
@@ -145,7 +148,7 @@ public class IgniteNodeRunner {
* @throws Exception If exception.
*/
private static CacheConfiguration cacheConfiguration() throws Exception {
- File ccfgTmpFile = new File(CACHE_CONFIGURATION_TMP_FILE);
+ File ccfgTmpFile = new File(CONFIGURATION_TMP_FILE);
try(ObjectInputStream in = new ObjectInputStream(new FileInputStream(ccfgTmpFile))) {
return (CacheConfiguration)in.readObject();