This is an automated email from the ASF dual-hosted git repository. agingade pushed a commit to branch feature/GEODE-4947 in repository https://gitbox.apache.org/repos/asf/geode.git
commit fe91b2586cdebe3c61d7ffbd13ee0820393ab94e Author: Nick Reich <nre...@pivotal.io> AuthorDate: Fri Mar 30 16:04:56 2018 -0700 GEODE-4947: Fix MySQL test truncating timestamps --- .../geode/connectors/jdbc/JdbcDistributedTest.java | 21 +++++++++++---------- .../connectors/jdbc/MySqlJdbcDistributedTest.java | 12 ++++++++++++ 2 files changed, 23 insertions(+), 10 deletions(-) diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java index 3c01a40..d3c6f07 100644 --- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java +++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/JdbcDistributedTest.java @@ -25,8 +25,6 @@ import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; -import java.sql.Types; -import java.time.Instant; import java.util.Date; import java.util.Properties; import java.util.concurrent.TimeUnit; @@ -52,7 +50,6 @@ import org.apache.geode.test.dunit.rules.ClusterStartupRule; import org.apache.geode.test.dunit.rules.DistributedRestoreSystemProperties; import org.apache.geode.test.dunit.rules.MemberVM; import org.apache.geode.test.junit.categories.DistributedTest; -import org.apache.geode.test.junit.rules.DatabaseConnectionRule; import org.apache.geode.test.junit.rules.GfshCommandRule; import org.apache.geode.test.junit.rules.serializable.SerializableTestName; @@ -319,15 +316,10 @@ public abstract class JdbcDistributedTest implements Serializable { } @Test - @Ignore("GEODE-4922: MySQL is truncating the milliseconds from the timestamp") public void verifyDateToTimestamp() throws Exception { server = startupRule.startServerVM(1, x -> x.withConnectionToLocator(locator.getPort())); - server.invoke(() -> { - Connection connection = DriverManager.getConnection(connectionUrl); - Statement statement = connection.createStatement(); - statement.execute("Create Table " + TABLE_NAME - + " (id varchar(10) primary key not null, mytimestamp timestamp)"); - }); + createTableWithTimeStamp(server, connectionUrl, TABLE_NAME); + createRegionUsingGfsh(true, false, true); createJdbcConnection(); createMapping(REGION_NAME, CONNECTION_NAME); @@ -354,6 +346,15 @@ public abstract class JdbcDistributedTest implements Serializable { }); } + protected void createTableWithTimeStamp(MemberVM vm, String connectionUrl, String tableName) { + vm.invoke(() -> { + Connection connection = DriverManager.getConnection(connectionUrl); + Statement statement = connection.createStatement(); + statement.execute("Create Table " + tableName + + " (id varchar(10) primary key not null, mytimestamp timestamp)"); + }); + } + @Test public void putWritesToDB() throws Exception { createTable(); diff --git a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java index 2576126..56b32fb 100644 --- a/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java +++ b/geode-connectors/src/test/java/org/apache/geode/connectors/jdbc/MySqlJdbcDistributedTest.java @@ -16,6 +16,7 @@ package org.apache.geode.connectors.jdbc; import java.net.URL; import java.sql.Connection; +import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; import java.sql.Statement; @@ -24,6 +25,7 @@ import java.sql.Types; import org.junit.ClassRule; import org.junit.experimental.categories.Category; +import org.apache.geode.test.dunit.rules.MemberVM; import org.apache.geode.test.junit.categories.DistributedTest; import org.apache.geode.test.junit.rules.MySqlConnectionRule; import org.apache.geode.test.junit.rules.SqlDatabaseConnectionRule; @@ -85,4 +87,14 @@ public class MySqlJdbcDistributedTest extends JdbcDistributedTest { statement.setNull(12, Types.BLOB); statement.setNull(13, Types.CHAR); } + + @Override + protected void createTableWithTimeStamp(MemberVM vm, String connectionUrl, String tableName) { + vm.invoke(() -> { + Connection connection = DriverManager.getConnection(connectionUrl); + Statement statement = connection.createStatement(); + statement.execute("CREATE TABLE " + tableName + + " (id varchar(10) primary key not null, mytimestamp timestamp(3))"); + }); + } } -- To stop receiving notification emails like this one, please contact aging...@apache.org.