# ignite-32 Fixed configuration in store benchmark.

Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/e23789c7
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/e23789c7
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/e23789c7

Branch: refs/heads/ignite-176
Commit: e23789c714b22cb1046e9caf21736a6b943c4250
Parents: ce0c94a
Author: anovikov <anovi...@gridgain.com>
Authored: Tue Feb 10 11:31:28 2015 +0700
Committer: anovikov <anovi...@gridgain.com>
Committed: Tue Feb 10 11:31:28 2015 +0700

----------------------------------------------------------------------
 .../yardstick/config/benchmark-store.properties | 33 +++++++++----
 .../yardstick/config/ignite-store-config.xml    | 50 ++++++--------------
 .../yardstick/IgniteBenchmarkArguments.java     | 22 +++++++++
 .../org/apache/ignite/yardstick/IgniteNode.java |  5 ++
 4 files changed, 67 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e23789c7/modules/yardstick/config/benchmark-store.properties
----------------------------------------------------------------------
diff --git a/modules/yardstick/config/benchmark-store.properties 
b/modules/yardstick/config/benchmark-store.properties
index c8e8cd7..8a7c265 100644
--- a/modules/yardstick/config/benchmark-store.properties
+++ b/modules/yardstick/config/benchmark-store.properties
@@ -42,7 +42,7 @@ JVM_OPTS=${JVM_OPTS}" \
 
 # List of default probes.
 # Add DStatProbe or VmStatProbe if your OS supports it (e.g. if running on 
Linux).
-BENCHMARK_DEFAULT_PROBES=ThroughputLatencyProbe,PercentileProbe,DStatProbe
+BENCHMARK_DEFAULT_PROBES=ThroughputLatencyProbe,PercentileProbe
 
 # Packages where the specified benchmark is searched by reflection mechanism.
 BENCHMARK_PACKAGES=org.yardstickframework,org.apache.ignite.yardstick
@@ -64,13 +64,30 @@ DRIVER_HOSTS=localhost
 # Number of nodes, used to wait for the specified number of nodes to start.
 nodesNum=$((`echo ${SERVER_HOSTS} | tr ',' '\n' | wc -l` + `echo 
${DRIVER_HOSTS} | tr ',' '\n' | wc -l`))
 
+# Each benchmark warm_up set to 60 seconds (1 minute).
+warm_up=60
+
+# Each benchmark run set to 300 seconds (5 mins).
+run=300
+
 # Run configuration which contains all benchmarks.
-# Note that each benchmark is set to run for 300 seconds (5 mins) with warm-up 
set to 60 seconds (1 minute).
 CONFIGS="\
--cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
60 -d 300 -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStoreGetBenchmark -sn IgniteNode 
-ds atomic-get,\
--cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
60 -d 300 -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStoreGetTxBenchmark -sn 
IgniteNode -ds tx-get,\
--cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
60 -d 300 -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStorePutBenchmark -sn IgniteNode 
-ds atomic-put,\
--cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
60 -d 300 -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStorePutTxBenchmark -sn 
IgniteNode -ds tx-put,\
--cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
60 -d 300 -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStorePutGetBenchmark -sn 
IgniteNode -ds atomic-put-get,\
--cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
60 -d 300 -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStorePutGetTxBenchmark -sn 
IgniteNode -ds tx-put-get\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStoreGetBenchmark -sn 
IgniteNode -ds atomic-get,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStoreGetBenchmark -sn 
IgniteNode -cs -ds atomic-store-get,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStoreGetBenchmark -sn 
IgniteNode -cs -wb -ds atomic-writeBehind-get,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStoreGetTxBenchmark 
-sn IgniteNode -ds tx-get,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStoreGetTxBenchmark 
-sn IgniteNode -cs -ds tx-store-get,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStoreGetTxBenchmark 
-sn IgniteNode -cs -wb -ds tx-writeBehind-get,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStorePutBenchmark -sn 
IgniteNode -ds atomic-put,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStorePutBenchmark -sn 
IgniteNode -cs -ds atomic-store-put,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStorePutBenchmark -sn 
IgniteNode -cs -wb -ds atomic-writeBehind-put,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStorePutTxBenchmark 
-sn IgniteNode -ds tx-put,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStorePutTxBenchmark 
-sn IgniteNode -cs -ds tx-store-put,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStorePutTxBenchmark 
-sn IgniteNode -cs -wb -ds tx-writeBehind-put,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStorePutGetBenchmark 
-sn IgniteNode -ds atomic-put-get,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStorePutGetBenchmark 
-sn IgniteNode -cs -ds atomic-store-put-get,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn IgniteJdbcStorePutGetBenchmark 
-sn IgniteNode -cs -wb -ds atomic-writeBehind-put-get,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn 
IgniteJdbcStorePutGetTxBenchmark -sn IgniteNode -ds tx-put-get,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn 
IgniteJdbcStorePutGetTxBenchmark -sn IgniteNode -cs -ds tx-store-put-get,\
+-cfg ${SCRIPT_DIR}/../config/ignite-store-config.xml -nn ${nodesNum} -b 1 -w 
${warm_up} -d ${run} -t 64 -sm PRIMARY_SYNC -dn 
IgniteJdbcStorePutGetTxBenchmark -sn IgniteNode -cs -wb -ds 
tx-writeBehind-put-get\
 "

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e23789c7/modules/yardstick/config/ignite-store-config.xml
----------------------------------------------------------------------
diff --git a/modules/yardstick/config/ignite-store-config.xml 
b/modules/yardstick/config/ignite-store-config.xml
index b107621..4cbee37 100644
--- a/modules/yardstick/config/ignite-store-config.xml
+++ b/modules/yardstick/config/ignite-store-config.xml
@@ -24,6 +24,18 @@
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
        xsi:schemaLocation="
         http://www.springframework.org/schema/beans  
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd";>
+    <!--
+        Store data source.
+    -->
+    <bean id="storeDataSource" 
class="org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStore">
+        <property name="dataSource">
+            <bean class="org.h2.jdbcx.JdbcConnectionPool" 
factory-method="create">
+                <constructor-arg 
value="jdbc:h2:tcp://localhost/store-benchmark/h2-benchmark"/>
+                <constructor-arg value="sa"/>
+                <constructor-arg value=""/>
+            </bean>
+        </property>
+    </bean>
 
     <bean id="sampleTypeMetadata" 
class="org.apache.ignite.cache.CacheTypeMetadata">
         <property name="databaseTable" value="SAMPLE"/>
@@ -45,7 +57,7 @@
                     <property name="databaseName" value="VALUE"/>
                     <property name="databaseType" value="4"/>
                     <property name="javaName" value="id"/>
-                    <property name="javaType" value="java.lang.Integer"/>
+                    <property name="javaType" value="int"/>
                 </bean>
             </list>
         </property>
@@ -93,25 +105,9 @@
 
                     <property name="cacheStoreFactory">
                         <bean 
class="javax.cache.configuration.FactoryBuilder$SingletonFactory">
-                            <constructor-arg>
-                                <bean 
class="org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStore">
-                                    <property name="dataSource">
-                                        <bean 
class="org.h2.jdbcx.JdbcConnectionPool" factory-method="create">
-                                            <constructor-arg 
value="jdbc:h2:tcp://localhost/store-benchmark/h2-benchmark"/>
-                                            <constructor-arg value="sa"/>
-                                            <constructor-arg value=""/>
-                                        </bean>
-                                    </property>
-                                </bean>
-                            </constructor-arg>
+                            <constructor-arg ref="storeDataSource"/>
                         </bean>
                     </property>
-
-                    <property name="readThrough" value="false"/>
-
-                    <property name="writeThrough" value="false"/>
-
-                    <property name="writeBehindEnabled" value="false"/>
                 </bean>
 
                 <bean 
class="org.apache.ignite.configuration.CacheConfiguration">
@@ -133,25 +129,9 @@
 
                     <property name="cacheStoreFactory">
                         <bean 
class="javax.cache.configuration.FactoryBuilder$SingletonFactory">
-                            <constructor-arg>
-                                <bean 
class="org.apache.ignite.cache.store.jdbc.CacheJdbcPojoStore">
-                                    <property name="dataSource">
-                                        <bean 
class="org.h2.jdbcx.JdbcConnectionPool" factory-method="create">
-                                            <constructor-arg 
value="jdbc:h2:tcp://localhost/store-benchmark/h2-benchmark"/>
-                                            <constructor-arg value="sa"/>
-                                            <constructor-arg value=""/>
-                                        </bean>
-                                    </property>
-                                </bean>
-                            </constructor-arg>
+                            <constructor-arg ref="storeDataSource"/>
                         </bean>
                     </property>
-
-                    <property name="readThrough" value="false"/>
-
-                    <property name="writeThrough" value="false"/>
-
-                    <property name="writeBehindEnabled" value="false"/>
                 </bean>
             </list>
         </property>

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e23789c7/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteBenchmarkArguments.java
----------------------------------------------------------------------
diff --git 
a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteBenchmarkArguments.java
 
b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteBenchmarkArguments.java
index 1204720..72d7013 100644
--- 
a/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteBenchmarkArguments.java
+++ 
b/modules/yardstick/src/main/java/org/apache/ignite/yardstick/IgniteBenchmarkArguments.java
@@ -86,6 +86,14 @@ public class IgniteBenchmarkArguments {
     @Parameter(names = {"-j", "--jobs"}, description = "Number of jobs for 
compute benchmarks")
     private int jobs = 10;
 
+    /** */
+    @Parameter(names = {"-cs", "--cacheStore"}, description = "Enable or 
disable cache store readThrough, writeThrough")
+    private boolean storeEnabled;
+
+    /** */
+    @Parameter(names = {"-wb", "--writeBehind"}, description = "Enable or 
disable writeBehind for cache store")
+    private boolean writeBehind;
+
     /**
      * @return Transaction concurrency.
      */
@@ -199,6 +207,20 @@ public class IgniteBenchmarkArguments {
     }
 
     /**
+     * @return {@code True} if enabled readThrough, writeThrough for cache.
+     */
+    public boolean isStoreEnabled() {
+        return storeEnabled;
+    }
+
+    /**
+     * @return {@code True} if enabled writeBehind for cache store.
+     */
+    public boolean isWriteBehind() {
+        return writeBehind;
+    }
+
+    /**
      * @return Description.
      */
     public String description() {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/e23789c7/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 94e6f52..7d64398 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
@@ -105,6 +105,11 @@ public class IgniteNode implements BenchmarkServer {
                     cc.setEvictionPolicy(new CacheLruEvictionPolicy(50000));
             }
 
+            cc.setReadThrough(args.isStoreEnabled());
+
+            cc.setWriteThrough(args.isStoreEnabled());
+
+            cc.setWriteBehindEnabled(args.isWriteBehind());
         }
 
         TransactionConfiguration tc = c.getTransactionConfiguration();

Reply via email to