You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by av...@apache.org on 2017/03/01 14:33:20 UTC
[37/50] [abbrv] ignite git commit: IGNITE-4741: Improved
JdbcStreamingSelfTest reliability. This closes #1568.
IGNITE-4741: Improved JdbcStreamingSelfTest reliability. This closes #1568.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/19d6c31a
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/19d6c31a
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/19d6c31a
Branch: refs/heads/master
Commit: 19d6c31a24a1dc86aeec203a758d1d0d7387d1ed
Parents: 658b4ad
Author: Alexander Paschenko <al...@gmail.com>
Authored: Wed Feb 22 15:30:43 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Wed Feb 22 15:30:43 2017 +0300
----------------------------------------------------------------------
modules/clients/src/test/config/jdbc-config.xml | 2 +-
.../internal/jdbc2/JdbcStreamingSelfTest.java | 58 ++++++++++----------
2 files changed, 29 insertions(+), 31 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/19d6c31a/modules/clients/src/test/config/jdbc-config.xml
----------------------------------------------------------------------
diff --git a/modules/clients/src/test/config/jdbc-config.xml b/modules/clients/src/test/config/jdbc-config.xml
index 5e6e12c..27d2617 100644
--- a/modules/clients/src/test/config/jdbc-config.xml
+++ b/modules/clients/src/test/config/jdbc-config.xml
@@ -43,7 +43,7 @@
<bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder">
<property name="addresses">
<list>
- <value>127.0.0.1:47500..47549</value>
+ <value>127.0.0.1:47500..47501</value>
</list>
</property>
</bean>
http://git-wip-us.apache.org/repos/asf/ignite/blob/19d6c31a/modules/clients/src/test/java/org/apache/ignite/internal/jdbc2/JdbcStreamingSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/clients/src/test/java/org/apache/ignite/internal/jdbc2/JdbcStreamingSelfTest.java b/modules/clients/src/test/java/org/apache/ignite/internal/jdbc2/JdbcStreamingSelfTest.java
index 5e206ee..6837a41 100644
--- a/modules/clients/src/test/java/org/apache/ignite/internal/jdbc2/JdbcStreamingSelfTest.java
+++ b/modules/clients/src/test/java/org/apache/ignite/internal/jdbc2/JdbcStreamingSelfTest.java
@@ -20,6 +20,7 @@ package org.apache.ignite.internal.jdbc2;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
+import java.util.Collections;
import java.util.Properties;
import org.apache.ignite.IgniteJdbcDriver;
import org.apache.ignite.IgniteLogger;
@@ -28,7 +29,6 @@ import org.apache.ignite.configuration.ConnectorConfiguration;
import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
-import org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinder;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
@@ -40,9 +40,6 @@ import static org.apache.ignite.cache.CacheWriteSynchronizationMode.FULL_SYNC;
* Data streaming test.
*/
public class JdbcStreamingSelfTest extends GridCommonAbstractTest {
- /** IP finder. */
- private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
-
/** JDBC URL. */
private static final String BASE_URL = CFG_URL_PREFIX + "modules/clients/src/test/config/jdbc-config.xml";
@@ -75,10 +72,14 @@ public class JdbcStreamingSelfTest extends GridCommonAbstractTest {
);
cfg.setCacheConfiguration(cache);
+ cfg.setLocalHost("127.0.0.1");
TcpDiscoverySpi disco = new TcpDiscoverySpi();
- disco.setIpFinder(IP_FINDER);
+ TcpDiscoveryVmIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+ ipFinder.setAddresses(Collections.singleton("127.0.0.1:47500..47501"));
+
+ disco.setIpFinder(ipFinder);
cfg.setDiscoverySpi(disco);
@@ -89,7 +90,7 @@ public class JdbcStreamingSelfTest extends GridCommonAbstractTest {
/** {@inheritDoc} */
@Override protected void beforeTestsStarted() throws Exception {
- startGridsMultiThreaded(3);
+ startGrids(2);
Class.forName("org.apache.ignite.IgniteJdbcDriver");
}
@@ -131,29 +132,29 @@ public class JdbcStreamingSelfTest extends GridCommonAbstractTest {
public void testStreamedInsert() throws Exception {
conn = createConnection(false);
- ignite(0).cache(null).put(5, 500);
+ for (int i = 10; i <= 100; i += 10)
+ ignite(0).cache(null).put(i, i * 100);
PreparedStatement stmt = conn.prepareStatement("insert into Integer(_key, _val) values (?, ?)");
- for (int i = 1; i <= 100000; i++) {
+ for (int i = 1; i <= 100; i++) {
stmt.setInt(1, i);
stmt.setInt(2, i);
stmt.executeUpdate();
}
- // Data is not there yet.
- assertNull(grid(0).cache(null).get(100000));
-
- // Let the stream flush.
- U.sleep(1500);
+ // Closing connection makes it wait for streamer close
+ // and thus for data load completion as well
+ conn.close();
// Now let's check it's all there.
- assertEquals(1, grid(0).cache(null).get(1));
- assertEquals(100000, grid(0).cache(null).get(100000));
-
- // 5 should still point to 500.
- assertEquals(500, grid(0).cache(null).get(5));
+ for (int i = 1; i <= 100; i++) {
+ if (i % 10 != 0)
+ assertEquals(i, grid(0).cache(null).get(i));
+ else // All that divides by 10 evenly should point to numbers 100 times greater - see above
+ assertEquals(i * 100, grid(0).cache(null).get(i));
+ }
}
/**
@@ -162,28 +163,25 @@ public class JdbcStreamingSelfTest extends GridCommonAbstractTest {
public void testStreamedInsertWithOverwritesAllowed() throws Exception {
conn = createConnection(true);
- ignite(0).cache(null).put(5, 500);
+ for (int i = 10; i <= 100; i += 10)
+ ignite(0).cache(null).put(i, i * 100);
PreparedStatement stmt = conn.prepareStatement("insert into Integer(_key, _val) values (?, ?)");
- for (int i = 1; i <= 100000; i++) {
+ for (int i = 1; i <= 100; i++) {
stmt.setInt(1, i);
stmt.setInt(2, i);
stmt.executeUpdate();
}
- // Data is not there yet.
- assertNull(grid(0).cache(null).get(100000));
-
- // Let the stream flush.
- U.sleep(1500);
+ // Closing connection makes it wait for streamer close
+ // and thus for data load completion as well
+ conn.close();
// Now let's check it's all there.
- assertEquals(1, grid(0).cache(null).get(1));
- assertEquals(100000, grid(0).cache(null).get(100000));
-
- // 5 should now point to 5 as we've turned overwriting on.
- assertEquals(5, grid(0).cache(null).get(5));
+ // i should point to i at all times as we've turned overwrites on above.
+ for (int i = 1; i <= 100; i++)
+ assertEquals(i, grid(0).cache(null).get(i));
}
}