NoPr opened a new issue, #7172: URL: https://github.com/apache/seatunnel/issues/7172
### Search before asking - [X] I had searched in the [issues](https://github.com/apache/seatunnel/issues?q=is%3Aissue+label%3A%22bug%22) and found no similar issues. ### What happened transform实现增量,因为transport不支持多源表,所以手动传入比较的时间值。 不匹配的左右值类型, 不能支持的CAST TYPE ### SeaTunnel Version 2.3.5 ### SeaTunnel Config ```conf "query " : "select col1 from fake_1810212286042378240_fa where cast(col1 as TIMESTAMP) > 1718208000" "query " : "select col1 from fake_1810212286042378240_fa where col1 > 1718208000" "query " : "select col1 from fake_1810212286042378240_fa where col1 > cast(1718208000 as timestamp)" "query " : "select col1 from fake_1810212286042378240_fa where cast(col1 as Timestamp) > 1718208000" col1 字段为mysql的date,尝试更改为timestamp还是同样的问题。 目标表为hive。增量值为手动获取 ``` ### Running Command ```shell api提交 ``` ### Error Exception ```log 1. { "plugin_name": "Sql", "result_table_name": "fake1_1810212286042378240_fa", "source_table_name": "fake_1810212286042378240_fa", "query " : "select col1 from fake_1810212286042378240_fa where col1 > cast(1718208000000 as DATE)" } 此时报错: org.apache.seatunnel.transform.exception.TransformException: ErrorCode:[COMMON-05], ErrorDescription:[Unsupported operation] - Unsupported CAST AS type: DATE org.apache.seatunnel.transform.sql.zeta.functions.SystemFunction.castAs(SystemFunction.java:140)org.apache.seatunnel.transform.sql.zeta.ZetaSQLFunction.executeCastExpr(ZetaSQLFunction.java:532) org.apache.seatunnel.transform.sql.zeta.ZetaSQLFunction.computeForValue(ZetaSQLFunction.java:292) org.apache.seatunnel.transform.sql.zeta.ZetaSQLFilter.executeComparisonOperator(ZetaSQLFilter.java:258) org.apache.seatunnel.transform.sql.zeta.ZetaSQLFilter.executeFilter(ZetaSQLFilter.java:88) org.apache.seatunnel.transform.sql.zeta.ZetaSQLEngine.transformBySQL(ZetaSQLEngine.java:222) org.apache.seatunnel.transform.sql.SQLTransform.transformRow(SQLTransform.java:115) org.apache.seatunnel.transform.common.AbstractSeaTunnelTransform.map(AbstractSeaTunnelTransform.java:34) org.apache.seatunnel.transform.common.AbstractSeaTunnelTransform.map(AbstractSeaTunnelTransform.java:25) org.apache.seatunnel.engine.server.task.flow.TransformFlowLifeCycle.received(TransformFlowLifeCycle.java:94) org.apache.seatunnel.engine.server.task.flow.TransformFlowLifeCycle.received(TransformFlowLifeCycle.java:37) org.apache.seatunnel.engine.server.task.SeaTunnelSourceCollector.sendRecordToNext(SeaTunnelSourceCollector.java:204) org.apache.seatunnel.engine.server.task.SeaTunnelSourceCollector.collect(SeaTunnelSourceCollector.java:119) org.apache.seatunnel.connectors.seatunnel.jdbc.source.JdbcSourceReader.pollNext(JdbcSourceReader.java:70) org.apache.seatunnel.engine.server.task.flow.SourceFlowLifeCycle.collect(SourceFlowLifeCycle.java:156) org.apache.seatunnel.engine.server.task.SourceSeaTunnelTask.collect(SourceSeaTunnelTask.java:116) org.apache.seatunnel.engine.server.task.SeaTunnelTask.stateProcess(SeaTunnelTask.java:168) org.apache.seatunnel.engine.server.task.SourceSeaTunnelTask.call(SourceSeaTunnelTask.java:121) org.apache.seatunnel.engine.server.TaskExecutionService$BlockingWorker.run(TaskExecutionService.java:703) org.apache.seatunnel.engine.server.TaskExecutionService$NamedTaskWrapper.run(TaskExecutionService.java:1004) java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)java.util.concurrent.FutureTask.run(FutureTask.java:266) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750)" 假如传递参数为'2024-06-06 17:52:06'报相同的错误 2. "query " : "select col1 from fake_1810212286042378240_fa where col1 > cast(1718208000 as DATE)" 此时报错: java.time.DateTimeExceptin: Invalid value for MonthOfYear (valid values 1 - 12): 80 java.time.temporal.ValueRange.checkValidValue(ValueRange.java:311) java.time.temporal.ChronoField.checkValidValue(ChrnoField.java:703) java.time.LocalDate.of(LocalDate.java:267) org.apache.seatunnel.transform.sql.zeta.functions.SystemFunction.castAs(SystemFunction.java:136) org.apache.satunnel.transform.sql.zeta.ZetaSQLFunction.executeCastExpr(ZetaSQLFunction.java:532) org.apache.seatunnel.transform.sql.zeta.ZetaSQLFunction.computeForValue(ZetaSQLFunction.java:292) org.apache.seatunnel.transform.sql.zeta.ZetaSQLFilter.executeComparisonOperator(ZetaSQLFilter.java:258) org.apache.seatunnel.transform.sql.zeta.ZetaSQLFilter.executeFilter(ZetaQLFilter.java:88) org.apache.seatunnel.transform.sql.zeta.ZetaSQLEngine.transformBySQL(ZetaSQLEngine.java:222) org.apache.seatunnel.transform.sql.SQLTransform.transformRow(SQLTansform.java:115) org.apache.seatunnel.transform.common.AbstractSeaTunnelTransform.map(AbstractSeaTunnelTransform.java:34) org.apache.seatunnel.transform.common.AbstractSeaTunnlTransform.map(AbstractSeaTunnelTransform.java:25) org.apache.seatunnel.engine.server.task.flow.TransformFlowLifeCycle.received(TransformFlowLifeCycle.java:94) org.apache.seatunel.engine.server.task.flow.TransformFlowLifeCycle.received(TransformFlowLifeCycle.java:37) org.apache.seatunnel.engine.server.task.SeaTunnelSourceCollector.sendRecordToNext(SeaTunneSourceCollector.java:204) org.apache.seatunnel.engine.server.task.SeaTunnelSourceCollector.collect(SeaTunnelSourceCollector.java:119) org.apache.seatunnel.connectors.seatunnel.dbc.source.JdbcSourceReader.pollNext(JdbcSourceReader.java:70) org.apache.seatunnel.engine.server.task.flow.SourceFlowLifeCycle.collect(SourceFlowLifeCycle.java:156) org.apacheseatunnel.engine.server.task.SourceSeaTunnelTask.collect(SourceSeaTunnelTask.java:116) org.apache.seatunnel.engine.server.task.SeaTunnelTask.stateProcess(SeaTunnelTask.java:168) org.apache.seatunnel.engine.server.task.SourceSeaTunnelTask.call(SourceSeaTunnelTask.java:121) org.apache.seatunnel.engine.server.TaskExecutionService$BlockingWorker.run(TaskExecutinService.java:703) org.apache.seatunnel.engine.server.TaskExecutionService$NamedTaskWrapper.run(TaskExecutionService.java:1004) java.util.concurrent.Executors$RunnableAdapter.cll(Executors.java:511) java.util.concurrent.FutureTask.run(FutureTask.java:266) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.oncurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) java.lang.Thread.run(Thread.java:750) 3. "query " : "select col1 from fake_1810212286042378240_fa where cast(col1 as TIMESTAMP) > 1718208000" 此时报错 : org.apache.seatunnel.transform.exception.TransformException: ErrorCode:[COMMON-05], ErrorDescription:[Unsupported operation] - Filed types not matched, left is: LocalDateTime, right is: Integer at org.apache.seatunnel.transform.sql.zeta.ZetaSQLFilter.greaterThanExpr(ZetaSQLFilter.java:309) at org.apache.seatunnel.transform.sql.zeta.ZetaSQLFilter.executeFilter(ZetaSQLFilter.java:96) at org.apache.seatunnel.transform.sql.zeta.ZetaSQLEngine.transformBySQL(ZetaSQLEngine.java:222) at org.apache.seatunnel.transform.sql.SQLTransform.transformRow(SQLTransform.java:115) at org.apache.seatunnel.transform.common.AbstractSeaTunnelTransform.map(AbstractSeaTunnelTransform.java:34) at org.apache.seatunnel.transform.common.AbstractSeaTunnelTransform.map(AbstractSeaTunnelTransform.java:25) at org.apache.seatunnel.engine.server.task.flow.TransformFlowLifeCycle.received(TransformFlowLifeCycle.java:94) at org.apache.seatunnel.engine.server.task.flow.TransformFlowLifeCycle.received(TransformFlowLifeCycle.java:37) at org.apache.seatunnel.engine.server.task.SeaTunnelSourceCollector.sendRecordToNext(SeaTunnelSourceCollector.java:204) at org.apache.seatunnel.engine.server.task.SeaTunnelSourceCollector.collect(SeaTunnelSourceCollector.java:119) at org.apache.seatunnel.connectors.seatunnel.jdbc.source.JdbcSourceReader.pollNext(JdbcSourceReader.java:70) at org.apache.seatunnel.engine.server.task.flow.SourceFlowLifeCycle.collect(SourceFlowLifeCycle.java:156) at org.apache.seatunnel.engine.server.task.SourceSeaTunnelTask.collect(SourceSeaTunnelTask.java:116) at org.apache.seatunnel.engine.server.task.SeaTunnelTask.stateProcess(SeaTunnelTask.java:168) at org.apache.seatunnel.engine.server.task.SourceSeaTunnelTask.call(SourceSeaTunnelTask.java:121) at org.apache.seatunnel.engine.server.TaskExecutionService$BlockingWorker.run(TaskExecutionService.java:703) at org.apache.seatunnel.engine.server.TaskExecutionService$NamedTaskWrapper.run(TaskExecutionService.java:1004) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:750) 不知道是我哪里出了问题 ``` ### Zeta or Flink or Spark Version Zeta 2.3.5 ### Java or Scala Version jdk-17 ### Screenshots _No response_ ### Are you willing to submit PR? - [X] Yes I am willing to submit a PR! ### Code of Conduct - [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
