Repository: ignite Updated Branches: refs/heads/master d1a039d36 -> d244225fb
IGNITE-5534 Added cluster activation to benchmarks Signed-off-by: Andrey Gura <ag...@apache.org> Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/d244225f Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/d244225f Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/d244225f Branch: refs/heads/master Commit: d244225fb3497495f246c011cce87ccfc8693f5b Parents: d1a039d Author: oleg-ostanin <oosta...@gridagin.com> Authored: Wed Nov 14 19:45:24 2018 +0300 Committer: Andrey Gura <ag...@apache.org> Committed: Wed Nov 14 19:45:24 2018 +0300 ---------------------------------------------------------------------- .../yardstick/IgniteAbstractBenchmark.java | 36 ++++++++++++++++++++ .../org/apache/ignite/yardstick/IgniteNode.java | 6 +++- 2 files changed, 41 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/d244225f/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteAbstractBenchmark.java ---------------------------------------------------------------------- diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteAbstractBenchmark.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteAbstractBenchmark.java index ba8bf50..e5dcd88 100644 --- a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteAbstractBenchmark.java +++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteAbstractBenchmark.java @@ -26,6 +26,8 @@ import org.apache.ignite.IgniteCluster; import org.apache.ignite.IgniteLogger; import org.apache.ignite.IgniteState; import org.apache.ignite.Ignition; +import org.apache.ignite.configuration.DataRegionConfiguration; +import org.apache.ignite.configuration.DataStorageConfiguration; import org.apache.ignite.cluster.ClusterNode; import org.apache.ignite.events.Event; import org.apache.ignite.lang.IgnitePredicate; @@ -68,6 +70,8 @@ public abstract class IgniteAbstractBenchmark extends BenchmarkDriverAdapter { waitForNodes(); + activateCluster(); + IgniteLogger log = ignite().log(); if (log.isInfoEnabled()) @@ -75,6 +79,38 @@ public abstract class IgniteAbstractBenchmark extends BenchmarkDriverAdapter { } /** + * Checks if persistence is enabled and activates cluster. + */ + private void activateCluster() { + //Flag to set if there is at least one data region with persistence in Ignite configuration. + boolean pdsInCfg = false; + + DataStorageConfiguration dsCfg = ignite().configuration().getDataStorageConfiguration(); + + if (dsCfg != null) { + pdsInCfg = dsCfg.getDefaultDataRegionConfiguration().isPersistenceEnabled(); + + DataRegionConfiguration[] drCfgArr = dsCfg.getDataRegionConfigurations(); + + if (drCfgArr != null) { + for (DataRegionConfiguration drCfg : drCfgArr) { + if (drCfg.isPersistenceEnabled()) { + pdsInCfg = true; + + break; + } + } + } + } + + if ((args.persistentStoreEnabled() || pdsInCfg) && !ignite().cluster().active()) { + BenchmarkUtils.println("Activating cluster."); + + ignite().cluster().active(true); + } + } + + /** * Prints non-system caches sizes during preload. * * @param logInterval time interval between printing preload log. Required to be positive. http://git-wip-us.apache.org/repos/asf/ignite/blob/d244225f/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteNode.java ---------------------------------------------------------------------- diff --git a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteNode.java b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteNode.java index 0c61435..4698e86 100644 --- a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteNode.java +++ b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteNode.java @@ -177,9 +177,13 @@ public class IgniteNode implements BenchmarkServer { memCfg.setPageSize(args.getPageSize()); } - if (args.persistentStoreEnabled()) { + // Set data storage configuration with persistence only if there is no data storage configuration + // in configuration file. + if (args.persistentStoreEnabled() && c.getDataStorageConfiguration() == null) { DataStorageConfiguration pcCfg = new DataStorageConfiguration(); + pcCfg.getDefaultDataRegionConfiguration().setPersistenceEnabled(true); + c.setBinaryConfiguration(new BinaryConfiguration().setCompactFooter(false)); c.setDataStorageConfiguration(pcCfg);