Hi,
在使用Flink SQL读写Oracle JDBC表时,遇到了timestamp转换异常:
Caused by: java.lang.ClassCastException: oracle.sql.TIMESTAMP cannot be cast to 
java.sql.Timestamp at 
org.apache.flink.table.dataformat.DataFormatConverters$TimestampConverter.toInternalImpl(DataFormatConverters.java:860)
 at 
org.apache.flink.table.dataformat.DataFormatConverters$DataFormatConverter.toInternal(DataFormatConverters.java:344)
 at 
org.apache.flink.table.dataformat.DataFormatConverters$RowConverter.toInternalImpl(DataFormatConverters.java:1377)
 at 
org.apache.flink.table.dataformat.DataFormatConverters$RowConverter.toInternalImpl(DataFormatConverters.java:1365)
看报错原因是Oracle JDBC返回的是oracle.sql.Timestamp, 
而Flink的runtime-blink里面需要的参数类型java.sql.Timestamp。网上看到了解决方案:https://stackoverflow.com/questions/13269564/java-lang-classcastexception-oracle-sql-timestamp-cannot-be-cast-to-java-sql-ti/22055190#22055190不过我们是yarn
 session模式启动,如果想要修改系统参数需要把集群的每个参数都修改一遍。请问官方是否遇到这个问题,如何更优雅的解决?
Best,Xinghalo

回复