[jira] [Updated] (FLINK-15445) JDBC Table Source didn't work for Types with precision (or/and scale)

2020-02-10 Thread Yu Li (Jira)


 [ 
https://issues.apache.org/jira/browse/FLINK-15445?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yu Li updated FLINK-15445:
--
Fix Version/s: (was: 1.10.0)
   1.11.0
   1.10.1

> JDBC Table Source didn't work for Types with precision (or/and scale)
> -
>
> Key: FLINK-15445
> URL: https://issues.apache.org/jira/browse/FLINK-15445
> Project: Flink
>  Issue Type: Bug
>  Components: Connectors / JDBC
>Affects Versions: 1.10.0
>Reporter: Zhenghua Gao
>Assignee: Zhenghua Gao
>Priority: Major
>  Labels: pull-request-available
> Fix For: 1.10.1, 1.11.0
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> {code:java}
>  public class JDBCSourceExample {
> public static void main(String[] args) throws Exception {
> StreamExecutionEnvironment env = 
> StreamExecutionEnvironment.getExecutionEnvironment();
> env.setParallelism(1);
> EnvironmentSettings envSettings = EnvironmentSettings.newInstance()
> .useBlinkPlanner()
> .inStreamingMode()
> .build();
> StreamTableEnvironment tableEnvironment = 
> StreamTableEnvironment.create(env, envSettings);
> String mysqlCurrencyDDL = "CREATE TABLE currency (\n" +
> "  currency_id BIGINT,\n" +
> "  currency_name STRING,\n" +
> "  rate DOUBLE,\n" +
> "  currency_time TIMESTAMP(3),\n" +
> "  country STRING,\n" +
> "  timestamp6 TIMESTAMP(6),\n" +
> "  time6 TIME(6),\n" +
> "  gdp DECIMAL(10, 4)\n" +
> ") WITH (\n" +
> "   'connector.type' = 'jdbc',\n" +
> "   'connector.url' = 'jdbc:mysql://localhost:3306/test',\n" +
> "   'connector.username' = 'root'," +
> "   'connector.table' = 'currency',\n" +
> "   'connector.driver' = 'com.mysql.jdbc.Driver',\n" +
> "   'connector.lookup.cache.max-rows' = '500', \n" +
> "   'connector.lookup.cache.ttl' = '10s',\n" +
> "   'connector.lookup.max-retries' = '3'" +
> ")";
> tableEnvironment.sqlUpdate(mysqlCurrencyDDL);
> String querySQL = "select * from currency";
> tableEnvironment.toAppendStream(tableEnvironment.sqlQuery(querySQL), 
> Row.class).print();
> tableEnvironment.execute("JdbcExample");
> }
> }{code}
>  
> Throws Exception:
>  
> {code:java}
> org.apache.flink.table.api.ValidationException: Type TIMESTAMP(6) of table 
> field 'timestamp6_col' does not match with the physical type TIMESTAMP(3) of 
> the 'timestamp6_col' field of the TableSource return 
> type.org.apache.flink.table.api.ValidationException: Type TIMESTAMP(6) of 
> table field 'timestamp6_col' does not match with the physical type 
> TIMESTAMP(3) of the 'timestamp6_col' field of the TableSource return type.
>  at 
> org.apache.flink.table.utils.TypeMappingUtils.lambda$checkPhysicalLogicalTypeCompatible$4(TypeMappingUtils.java:164)
>  at 
> org.apache.flink.table.utils.TypeMappingUtils$1.defaultMethod(TypeMappingUtils.java:277)
>  at 
> org.apache.flink.table.utils.TypeMappingUtils$1.defaultMethod(TypeMappingUtils.java:254)
>  at 
> org.apache.flink.table.types.logical.utils.LogicalTypeDefaultVisitor.visit(LogicalTypeDefaultVisitor.java:132)
>  at 
> org.apache.flink.table.types.logical.TimestampType.accept(TimestampType.java:151)
>  at 
> org.apache.flink.table.utils.TypeMappingUtils.checkIfCompatible(TypeMappingUtils.java:254)
>  at 
> org.apache.flink.table.utils.TypeMappingUtils.checkPhysicalLogicalTypeCompatible(TypeMappingUtils.java:160)
>  at 
> org.apache.flink.table.utils.TypeMappingUtils.lambda$computeInCompositeType$8(TypeMappingUtils.java:232)
>  at java.util.stream.Collectors.lambda$toMap$58(Collectors.java:1321) at 
> java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169) at 
> java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
>  at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) at 
> java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) 
> at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) 
> at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at 
> java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) at 
> org.apache.flink.table.utils.TypeMappingUtils.computeInCompositeType(TypeMappingUtils.java:214)
>  at 
> org.apache.flink.table.utils.TypeMappingUtils.computePhysicalIndices(TypeMappingUtils.java:192)
>  at 
> 

[jira] [Updated] (FLINK-15445) JDBC Table Source didn't work for Types with precision (or/and scale)

2020-01-02 Thread ASF GitHub Bot (Jira)


 [ 
https://issues.apache.org/jira/browse/FLINK-15445?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated FLINK-15445:
---
Labels: pull-request-available  (was: )

> JDBC Table Source didn't work for Types with precision (or/and scale)
> -
>
> Key: FLINK-15445
> URL: https://issues.apache.org/jira/browse/FLINK-15445
> Project: Flink
>  Issue Type: Bug
>  Components: Connectors / JDBC
>Affects Versions: 1.10.0
>Reporter: Zhenghua Gao
>Assignee: Zhenghua Gao
>Priority: Major
>  Labels: pull-request-available
> Fix For: 1.10.0
>
>
> {code:java}
>  public class JDBCSourceExample {
> public static void main(String[] args) throws Exception {
> StreamExecutionEnvironment env = 
> StreamExecutionEnvironment.getExecutionEnvironment();
> env.setParallelism(1);
> EnvironmentSettings envSettings = EnvironmentSettings.newInstance()
> .useBlinkPlanner()
> .inStreamingMode()
> .build();
> StreamTableEnvironment tableEnvironment = 
> StreamTableEnvironment.create(env, envSettings);
> String mysqlCurrencyDDL = "CREATE TABLE currency (\n" +
> "  currency_id BIGINT,\n" +
> "  currency_name STRING,\n" +
> "  rate DOUBLE,\n" +
> "  currency_time TIMESTAMP(3),\n" +
> "  country STRING,\n" +
> "  timestamp6 TIMESTAMP(6),\n" +
> "  time6 TIME(6),\n" +
> "  gdp DECIMAL(10, 4)\n" +
> ") WITH (\n" +
> "   'connector.type' = 'jdbc',\n" +
> "   'connector.url' = 'jdbc:mysql://localhost:3306/test',\n" +
> "   'connector.username' = 'root'," +
> "   'connector.table' = 'currency',\n" +
> "   'connector.driver' = 'com.mysql.jdbc.Driver',\n" +
> "   'connector.lookup.cache.max-rows' = '500', \n" +
> "   'connector.lookup.cache.ttl' = '10s',\n" +
> "   'connector.lookup.max-retries' = '3'" +
> ")";
> tableEnvironment.sqlUpdate(mysqlCurrencyDDL);
> String querySQL = "select * from currency";
> tableEnvironment.toAppendStream(tableEnvironment.sqlQuery(querySQL), 
> Row.class).print();
> tableEnvironment.execute("JdbcExample");
> }
> }{code}
>  
> Throws Exception:
>  
> {code:java}
> org.apache.flink.table.api.ValidationException: Type TIMESTAMP(6) of table 
> field 'timestamp6_col' does not match with the physical type TIMESTAMP(3) of 
> the 'timestamp6_col' field of the TableSource return 
> type.org.apache.flink.table.api.ValidationException: Type TIMESTAMP(6) of 
> table field 'timestamp6_col' does not match with the physical type 
> TIMESTAMP(3) of the 'timestamp6_col' field of the TableSource return type.
>  at 
> org.apache.flink.table.utils.TypeMappingUtils.lambda$checkPhysicalLogicalTypeCompatible$4(TypeMappingUtils.java:164)
>  at 
> org.apache.flink.table.utils.TypeMappingUtils$1.defaultMethod(TypeMappingUtils.java:277)
>  at 
> org.apache.flink.table.utils.TypeMappingUtils$1.defaultMethod(TypeMappingUtils.java:254)
>  at 
> org.apache.flink.table.types.logical.utils.LogicalTypeDefaultVisitor.visit(LogicalTypeDefaultVisitor.java:132)
>  at 
> org.apache.flink.table.types.logical.TimestampType.accept(TimestampType.java:151)
>  at 
> org.apache.flink.table.utils.TypeMappingUtils.checkIfCompatible(TypeMappingUtils.java:254)
>  at 
> org.apache.flink.table.utils.TypeMappingUtils.checkPhysicalLogicalTypeCompatible(TypeMappingUtils.java:160)
>  at 
> org.apache.flink.table.utils.TypeMappingUtils.lambda$computeInCompositeType$8(TypeMappingUtils.java:232)
>  at java.util.stream.Collectors.lambda$toMap$58(Collectors.java:1321) at 
> java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169) at 
> java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
>  at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) at 
> java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) 
> at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) 
> at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at 
> java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) at 
> org.apache.flink.table.utils.TypeMappingUtils.computeInCompositeType(TypeMappingUtils.java:214)
>  at 
> org.apache.flink.table.utils.TypeMappingUtils.computePhysicalIndices(TypeMappingUtils.java:192)
>  at 
> org.apache.flink.table.utils.TypeMappingUtils.computePhysicalIndicesOrTimeAttributeMarkers(TypeMappingUtils.java:112)
>  at 
> 

[jira] [Updated] (FLINK-15445) JDBC Table Source didn't work for Types with precision (or/and scale)

2020-01-02 Thread Zhenghua Gao (Jira)


 [ 
https://issues.apache.org/jira/browse/FLINK-15445?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Zhenghua Gao updated FLINK-15445:
-
Description: 
{code:java}
 public class JDBCSourceExample {
public static void main(String[] args) throws Exception {
StreamExecutionEnvironment env = 
StreamExecutionEnvironment.getExecutionEnvironment();
env.setParallelism(1);

EnvironmentSettings envSettings = EnvironmentSettings.newInstance()
.useBlinkPlanner()
.inStreamingMode()
.build();
StreamTableEnvironment tableEnvironment = 
StreamTableEnvironment.create(env, envSettings);
String mysqlCurrencyDDL = "CREATE TABLE currency (\n" +
"  currency_id BIGINT,\n" +
"  currency_name STRING,\n" +
"  rate DOUBLE,\n" +
"  currency_time TIMESTAMP(3),\n" +
"  country STRING,\n" +
"  timestamp6 TIMESTAMP(6),\n" +
"  time6 TIME(6),\n" +
"  gdp DECIMAL(10, 4)\n" +
") WITH (\n" +
"   'connector.type' = 'jdbc',\n" +
"   'connector.url' = 'jdbc:mysql://localhost:3306/test',\n" +
"   'connector.username' = 'root'," +
"   'connector.table' = 'currency',\n" +
"   'connector.driver' = 'com.mysql.jdbc.Driver',\n" +
"   'connector.lookup.cache.max-rows' = '500', \n" +
"   'connector.lookup.cache.ttl' = '10s',\n" +
"   'connector.lookup.max-retries' = '3'" +
")";

tableEnvironment.sqlUpdate(mysqlCurrencyDDL);


String querySQL = "select * from currency";

tableEnvironment.toAppendStream(tableEnvironment.sqlQuery(querySQL), 
Row.class).print();

tableEnvironment.execute("JdbcExample");
}
}{code}
 

Throws Exception:

 
{code:java}
org.apache.flink.table.api.ValidationException: Type TIMESTAMP(6) of table 
field 'timestamp6_col' does not match with the physical type TIMESTAMP(3) of 
the 'timestamp6_col' field of the TableSource return 
type.org.apache.flink.table.api.ValidationException: Type TIMESTAMP(6) of table 
field 'timestamp6_col' does not match with the physical type TIMESTAMP(3) of 
the 'timestamp6_col' field of the TableSource return type.
 at 
org.apache.flink.table.utils.TypeMappingUtils.lambda$checkPhysicalLogicalTypeCompatible$4(TypeMappingUtils.java:164)
 at 
org.apache.flink.table.utils.TypeMappingUtils$1.defaultMethod(TypeMappingUtils.java:277)
 at 
org.apache.flink.table.utils.TypeMappingUtils$1.defaultMethod(TypeMappingUtils.java:254)
 at 
org.apache.flink.table.types.logical.utils.LogicalTypeDefaultVisitor.visit(LogicalTypeDefaultVisitor.java:132)
 at 
org.apache.flink.table.types.logical.TimestampType.accept(TimestampType.java:151)
 at 
org.apache.flink.table.utils.TypeMappingUtils.checkIfCompatible(TypeMappingUtils.java:254)
 at 
org.apache.flink.table.utils.TypeMappingUtils.checkPhysicalLogicalTypeCompatible(TypeMappingUtils.java:160)
 at 
org.apache.flink.table.utils.TypeMappingUtils.lambda$computeInCompositeType$8(TypeMappingUtils.java:232)
 at java.util.stream.Collectors.lambda$toMap$58(Collectors.java:1321) at 
java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169) at 
java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382) 
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) at 
java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) at 
java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708) at 
java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at 
java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499) at 
org.apache.flink.table.utils.TypeMappingUtils.computeInCompositeType(TypeMappingUtils.java:214)
 at 
org.apache.flink.table.utils.TypeMappingUtils.computePhysicalIndices(TypeMappingUtils.java:192)
 at 
org.apache.flink.table.utils.TypeMappingUtils.computePhysicalIndicesOrTimeAttributeMarkers(TypeMappingUtils.java:112)
 at 
org.apache.flink.table.planner.plan.nodes.physical.stream.StreamExecTableSourceScan.computeIndexMapping(StreamExecTableSourceScan.scala:211)
 at 
org.apache.flink.table.planner.plan.nodes.physical.stream.StreamExecTableSourceScan.translateToPlanInternal(StreamExecTableSourceScan.scala:107)
 at 
org.apache.flink.table.planner.plan.nodes.physical.stream.StreamExecTableSourceScan.translateToPlanInternal(StreamExecTableSourceScan.scala:62)
 at 
org.apache.flink.table.planner.plan.nodes.exec.ExecNode$class.translateToPlan(ExecNode.scala:58)
 at 
org.apache.flink.table.planner.plan.nodes.physical.stream.StreamExecTableSourceScan.translateToPlan(StreamExecTableSourceScan.scala:62)
 at 

[jira] [Updated] (FLINK-15445) JDBC Table Source didn't work for Types with precision (or/and scale)

2019-12-31 Thread Zhenghua Gao (Jira)


 [ 
https://issues.apache.org/jira/browse/FLINK-15445?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Zhenghua Gao updated FLINK-15445:
-
Description: 
{code:java}
 public class JDBCSourceExample {
public static void main(String[] args) throws Exception {
StreamExecutionEnvironment env = 
StreamExecutionEnvironment.getExecutionEnvironment();
env.setParallelism(1);

EnvironmentSettings envSettings = EnvironmentSettings.newInstance()
.useBlinkPlanner()
.inStreamingMode()
.build();
StreamTableEnvironment tableEnvironment = 
StreamTableEnvironment.create(env, envSettings);
String mysqlCurrencyDDL = "CREATE TABLE currency (\n" +
"  currency_id BIGINT,\n" +
"  currency_name STRING,\n" +
"  rate DOUBLE,\n" +
"  currency_time TIMESTAMP(3),\n" +
"  country STRING,\n" +
"  timestamp6 TIMESTAMP(6),\n" +
"  time6 TIME(6),\n" +
"  gdp DECIMAL(10, 4)\n" +
") WITH (\n" +
"   'connector.type' = 'jdbc',\n" +
"   'connector.url' = 'jdbc:mysql://localhost:3306/test',\n" +
"   'connector.username' = 'root'," +
"   'connector.table' = 'currency',\n" +
"   'connector.driver' = 'com.mysql.jdbc.Driver',\n" +
"   'connector.lookup.cache.max-rows' = '500', \n" +
"   'connector.lookup.cache.ttl' = '10s',\n" +
"   'connector.lookup.max-retries' = '3'" +
")";

tableEnvironment.sqlUpdate(mysqlCurrencyDDL);


String querySQL = "select * from currency";

tableEnvironment.toAppendStream(tableEnvironment.sqlQuery(querySQL), 
Row.class).print();

tableEnvironment.execute("JdbcExample");
}
}{code}
 

Throws Exception:

 

Exception in thread "main" org.apache.flink.table.api.ValidationException: Type 
TIMESTAMP(6) of table field 'timestamp6' does not match with the physical type 
TIMESTAMP(3) of the 'timestamp9' field of the TableSource return type.

  was:
{code:java}
 public class JDBCSourceExample {
public static void main(String[] args) throws Exception {
StreamExecutionEnvironment env = 
StreamExecutionEnvironment.getExecutionEnvironment();
env.setParallelism(1);

EnvironmentSettings envSettings = EnvironmentSettings.newInstance()
.useBlinkPlanner()
.inStreamingMode()
.build();
StreamTableEnvironment tableEnvironment = 
StreamTableEnvironment.create(env, envSettings);
String mysqlCurrencyDDL = "CREATE TABLE currency (\n" +
"  currency_id BIGINT,\n" +
"  currency_name STRING,\n" +
"  rate DOUBLE,\n" +
"  currency_time TIMESTAMP(3),\n" +
"  country STRING,\n" +
"  timestamp6 TIMESTAMP(6),\n" +
"  time6 TIME(6),\n" +
"  gdp DECIMAL(10, 4)\n" +
") WITH (\n" +
"   'connector.type' = 'jdbc',\n" +
"   'connector.url' = 'jdbc:mysql://localhost:3306/test',\n" +
"   'connector.username' = 'root'," +
"   'connector.table' = 'currency',\n" +
"   'connector.driver' = 'com.mysql.jdbc.Driver',\n" +
"   'connector.lookup.cache.max-rows' = '500', \n" +
"   'connector.lookup.cache.ttl' = '10s',\n" +
"   'connector.lookup.max-retries' = '3'" +
")";

tableEnvironment.sqlUpdate(mysqlCurrencyDDL);


String querySQL = "select * from currency";

tableEnvironment.toAppendStream(tableEnvironment.sqlQuery(querySQL), 
Row.class).print();

tableEnvironment.execute("JdbcExample");
}
}{code}


> JDBC Table Source didn't work for Types with precision (or/and scale)
> -
>
> Key: FLINK-15445
> URL: https://issues.apache.org/jira/browse/FLINK-15445
> Project: Flink
>  Issue Type: Bug
>  Components: Connectors / JDBC
>Affects Versions: 1.10.0
>Reporter: Zhenghua Gao
>Priority: Major
> Fix For: 1.10.0
>
>
> {code:java}
>  public class JDBCSourceExample {
> public static void main(String[] args) throws Exception {
> StreamExecutionEnvironment env = 
> StreamExecutionEnvironment.getExecutionEnvironment();
> env.setParallelism(1);
> EnvironmentSettings envSettings = EnvironmentSettings.newInstance()
> .useBlinkPlanner()
> .inStreamingMode()
> .build();
> StreamTableEnvironment tableEnvironment = 
> StreamTableEnvironment.create(env, envSettings);
>  

[jira] [Updated] (FLINK-15445) JDBC Table Source didn't work for Types with precision (or/and scale)

2019-12-31 Thread Zhenghua Gao (Jira)


 [ 
https://issues.apache.org/jira/browse/FLINK-15445?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Zhenghua Gao updated FLINK-15445:
-
Description: 
{code:java}
 public class JDBCSourceExample {
public static void main(String[] args) throws Exception {
StreamExecutionEnvironment env = 
StreamExecutionEnvironment.getExecutionEnvironment();
env.setParallelism(1);

EnvironmentSettings envSettings = EnvironmentSettings.newInstance()
.useBlinkPlanner()
.inStreamingMode()
.build();
StreamTableEnvironment tableEnvironment = 
StreamTableEnvironment.create(env, envSettings);
String mysqlCurrencyDDL = "CREATE TABLE currency (\n" +
"  currency_id BIGINT,\n" +
"  currency_name STRING,\n" +
"  rate DOUBLE,\n" +
"  currency_time TIMESTAMP(3),\n" +
"  country STRING,\n" +
"  timestamp6 TIMESTAMP(6),\n" +
"  time6 TIME(6),\n" +
"  gdp DECIMAL(10, 4)\n" +
") WITH (\n" +
"   'connector.type' = 'jdbc',\n" +
"   'connector.url' = 'jdbc:mysql://localhost:3306/test',\n" +
"   'connector.username' = 'root'," +
"   'connector.table' = 'currency',\n" +
"   'connector.driver' = 'com.mysql.jdbc.Driver',\n" +
"   'connector.lookup.cache.max-rows' = '500', \n" +
"   'connector.lookup.cache.ttl' = '10s',\n" +
"   'connector.lookup.max-retries' = '3'" +
")";

tableEnvironment.sqlUpdate(mysqlCurrencyDDL);


String querySQL = "select * from currency";

tableEnvironment.toAppendStream(tableEnvironment.sqlQuery(querySQL), 
Row.class).print();

tableEnvironment.execute("JdbcExample");
}
}{code}

  was:
{code:java}
public class JDBCSourceExample { public static void main(String[] args) throws 
Exception { StreamExecutionEnvironment env = 
StreamExecutionEnvironment.getExecutionEnvironment(); env.setParallelism(1); 
EnvironmentSettings envSettings = EnvironmentSettings.newInstance() 
.useBlinkPlanner() .inStreamingMode() .build(); StreamTableEnvironment 
tableEnvironment = StreamTableEnvironment.create(env, envSettings); String 
mysqlCurrencyDDL = "CREATE TABLE currency (\n" + " currency_id BIGINT,\n" + " 
currency_name STRING,\n" + " rate DOUBLE,\n" + " currency_time TIMESTAMP(3),\n" 
+ " country STRING,\n" + " timestamp6 TIMESTAMP(6),\n" + " time6 TIME(6),\n" + 
" gdp DECIMAL(10, 4)\n" + ") WITH (\n" + " 'connector.type' = 'jdbc',\n" + " 
'connector.url' = 'jdbc:mysql://localhost:3306/test',\n" + " 
'connector.username' = 'root'," + " 'connector.table' = 'currency',\n" + " 
'connector.driver' = 'com.mysql.jdbc.Driver',\n" + " 
'connector.lookup.cache.max-rows' = '500', \n" + " 'connector.lookup.cache.ttl' 
= '10s',\n" + " 'connector.lookup.max-retries' = '3'" + ")"; 
tableEnvironment.sqlUpdate(mysqlCurrencyDDL); String querySQL = "select * from 
currency"; tableEnvironment.toAppendStream(tableEnvironment.sqlQuery(querySQL), 
Row.class).print(); tableEnvironment.execute("JdbcExample"); } }
{code}
 


> JDBC Table Source didn't work for Types with precision (or/and scale)
> -
>
> Key: FLINK-15445
> URL: https://issues.apache.org/jira/browse/FLINK-15445
> Project: Flink
>  Issue Type: Bug
>  Components: Connectors / JDBC
>Affects Versions: 1.10.0
>Reporter: Zhenghua Gao
>Priority: Major
> Fix For: 1.10.0
>
>
> {code:java}
>  public class JDBCSourceExample {
> public static void main(String[] args) throws Exception {
> StreamExecutionEnvironment env = 
> StreamExecutionEnvironment.getExecutionEnvironment();
> env.setParallelism(1);
> EnvironmentSettings envSettings = EnvironmentSettings.newInstance()
> .useBlinkPlanner()
> .inStreamingMode()
> .build();
> StreamTableEnvironment tableEnvironment = 
> StreamTableEnvironment.create(env, envSettings);
> String mysqlCurrencyDDL = "CREATE TABLE currency (\n" +
> "  currency_id BIGINT,\n" +
> "  currency_name STRING,\n" +
> "  rate DOUBLE,\n" +
> "  currency_time TIMESTAMP(3),\n" +
> "  country STRING,\n" +
> "  timestamp6 TIMESTAMP(6),\n" +
> "  time6 TIME(6),\n" +
> "  gdp DECIMAL(10, 4)\n" +
> ") WITH (\n" +
> "   'connector.type' = 'jdbc',\n" +
> "   'connector.url' = 'jdbc:mysql://localhost:3306/test',\n" +
> "   'connector.username' = 'root'," +
> "   

[jira] [Updated] (FLINK-15445) JDBC Table Source didn't work for Types with precision (or/and scale)

2019-12-31 Thread Zhenghua Gao (Jira)


 [ 
https://issues.apache.org/jira/browse/FLINK-15445?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Zhenghua Gao updated FLINK-15445:
-
Description: 
{code:java}
public class JDBCSourceExample { public static void main(String[] args) throws 
Exception { StreamExecutionEnvironment env = 
StreamExecutionEnvironment.getExecutionEnvironment(); env.setParallelism(1); 
EnvironmentSettings envSettings = EnvironmentSettings.newInstance() 
.useBlinkPlanner() .inStreamingMode() .build(); StreamTableEnvironment 
tableEnvironment = StreamTableEnvironment.create(env, envSettings); String 
mysqlCurrencyDDL = "CREATE TABLE currency (\n" + " currency_id BIGINT,\n" + " 
currency_name STRING,\n" + " rate DOUBLE,\n" + " currency_time TIMESTAMP(3),\n" 
+ " country STRING,\n" + " timestamp6 TIMESTAMP(6),\n" + " time6 TIME(6),\n" + 
" gdp DECIMAL(10, 4)\n" + ") WITH (\n" + " 'connector.type' = 'jdbc',\n" + " 
'connector.url' = 'jdbc:mysql://localhost:3306/test',\n" + " 
'connector.username' = 'root'," + " 'connector.table' = 'currency',\n" + " 
'connector.driver' = 'com.mysql.jdbc.Driver',\n" + " 
'connector.lookup.cache.max-rows' = '500', \n" + " 'connector.lookup.cache.ttl' 
= '10s',\n" + " 'connector.lookup.max-retries' = '3'" + ")"; 
tableEnvironment.sqlUpdate(mysqlCurrencyDDL); String querySQL = "select * from 
currency"; tableEnvironment.toAppendStream(tableEnvironment.sqlQuery(querySQL), 
Row.class).print(); tableEnvironment.execute("JdbcExample"); } }
{code}
 

> JDBC Table Source didn't work for Types with precision (or/and scale)
> -
>
> Key: FLINK-15445
> URL: https://issues.apache.org/jira/browse/FLINK-15445
> Project: Flink
>  Issue Type: Bug
>  Components: Connectors / JDBC
>Affects Versions: 1.10.0
>Reporter: Zhenghua Gao
>Priority: Major
> Fix For: 1.10.0
>
>
> {code:java}
> public class JDBCSourceExample { public static void main(String[] args) 
> throws Exception { StreamExecutionEnvironment env = 
> StreamExecutionEnvironment.getExecutionEnvironment(); env.setParallelism(1); 
> EnvironmentSettings envSettings = EnvironmentSettings.newInstance() 
> .useBlinkPlanner() .inStreamingMode() .build(); StreamTableEnvironment 
> tableEnvironment = StreamTableEnvironment.create(env, envSettings); String 
> mysqlCurrencyDDL = "CREATE TABLE currency (\n" + " currency_id BIGINT,\n" + " 
> currency_name STRING,\n" + " rate DOUBLE,\n" + " currency_time 
> TIMESTAMP(3),\n" + " country STRING,\n" + " timestamp6 TIMESTAMP(6),\n" + " 
> time6 TIME(6),\n" + " gdp DECIMAL(10, 4)\n" + ") WITH (\n" + " 
> 'connector.type' = 'jdbc',\n" + " 'connector.url' = 
> 'jdbc:mysql://localhost:3306/test',\n" + " 'connector.username' = 'root'," + 
> " 'connector.table' = 'currency',\n" + " 'connector.driver' = 
> 'com.mysql.jdbc.Driver',\n" + " 'connector.lookup.cache.max-rows' = '500', 
> \n" + " 'connector.lookup.cache.ttl' = '10s',\n" + " 
> 'connector.lookup.max-retries' = '3'" + ")"; 
> tableEnvironment.sqlUpdate(mysqlCurrencyDDL); String querySQL = "select * 
> from currency"; 
> tableEnvironment.toAppendStream(tableEnvironment.sqlQuery(querySQL), 
> Row.class).print(); tableEnvironment.execute("JdbcExample"); } }
> {code}
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (FLINK-15445) JDBC Table Source didn't work for Types with precision (or/and scale)

2019-12-31 Thread Jark Wu (Jira)


 [ 
https://issues.apache.org/jira/browse/FLINK-15445?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jark Wu updated FLINK-15445:

Fix Version/s: 1.10.0

> JDBC Table Source didn't work for Types with precision (or/and scale)
> -
>
> Key: FLINK-15445
> URL: https://issues.apache.org/jira/browse/FLINK-15445
> Project: Flink
>  Issue Type: Bug
>  Components: Connectors / JDBC
>Affects Versions: 1.10.0
>Reporter: Zhenghua Gao
>Priority: Major
> Fix For: 1.10.0
>
>




--
This message was sent by Atlassian Jira
(v8.3.4#803005)