cccc0212 opened a new issue, #5968:
URL: https://github.com/apache/seatunnel/issues/5968

   ### 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
   
   mysql source field type is bigint, clickhourse sink will execute error.
   because Integer conversion failed.
   Here are my own suggestions for modifications:
   
![1701826412016](https://github.com/apache/seatunnel/assets/26596455/182f0721-c438-4841-bf53-ed8f6df9dd0a)
   
   
   
   ### SeaTunnel Version
   
   2.3.2
   
   ### SeaTunnel Config
   
   ```conf
   {
     "sink":[
       {
         "password":"123456",
         "database":"fdm",
         "host":"127.0.0.1:8123",
         "source_table_name":"source_result_0",
         "plugin_name":"Clickhouse",
         "table":"fdm_jcydym_oracle_test_da",
         "username":"default"
       }
     ],
     "source":[
       {
         "password":"root",
         "driver":"com.mysql.cj.jdbc.Driver",
         "fetch_size":1000,
         "result_table_name":"source_result_0",
         "plugin_name":"Jdbc2",
         "query":"select * from oracle_test",
         "user":"root",
         "url":"jdbc:mysql://127.0.0.1:3306/kdata?useSSL=false"
       }
     ],
     "env":{
       "job.mode":"BATCH",
       "execution.parallelism":"1",
       "checkpoint.interval":"5000"
     }
   }
   ```
   
   
   ### Running Command
   
   ```shell
   org.apache.seatunnel.example.engine.SeaTunnelEngineExample
   ```
   
   
   ### Error Exception
   
   ```log
   2023-12-06 09:36:27,356 WARN  
org.apache.seatunnel.engine.server.TaskExecutionService - [localhost]:5801 
[seatunnel-515695] [5.1] Exception in 
org.apache.seatunnel.engine.server.task.TransformSeaTunnelTask@2e82a092
   
org.apache.seatunnel.connectors.seatunnel.clickhouse.exception.ClickhouseConnectorException:
 ErrorCode:[COMMON-10], ErrorDescription:[Flush data operation that in sink 
connector failed] - Clickhouse execute batch statement error
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.ClickhouseSinkWriter.flush(ClickhouseSinkWriter.java:134)
 ~[classes/:?]
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.ClickhouseSinkWriter.close(ClickhouseSinkWriter.java:109)
 ~[classes/:?]
        at 
org.apache.seatunnel.engine.server.task.flow.SinkFlowLifeCycle.close(SinkFlowLifeCycle.java:134)
 ~[classes/:?]
        at 
org.apache.seatunnel.engine.server.task.SeaTunnelTask.lambda$close$4(SeaTunnelTask.java:322)
 ~[classes/:?]
        at 
java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) 
~[?:1.8.0_302]
        at 
java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1384) 
~[?:1.8.0_302]
        at 
java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482) 
~[?:1.8.0_302]
        at java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:290) 
~[?:1.8.0_302]
        at 
java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731) 
~[?:1.8.0_302]
        at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) 
~[?:1.8.0_302]
        at 
java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056) 
~[?:1.8.0_302]
        at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692) 
~[?:1.8.0_302]
        at 
java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:175) 
~[?:1.8.0_302]
        Suppressed: java.lang.ClassCastException: java.lang.Long cannot be cast 
to java.lang.Integer
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.inject.IntInjectFunction.injectFields(IntInjectFunction.java:40)
 ~[classes/:?]
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.JdbcRowConverter.toExternal(JdbcRowConverter.java:79)
 ~[classes/:?]
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.SimpleBatchStatementExecutor.addToBatch(SimpleBatchStatementExecutor.java:42)
 ~[classes/:?]
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.BufferedBatchStatementExecutor.executeBatch(BufferedBatchStatementExecutor.java:51)
 ~[classes/:?]
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.BufferedBatchStatementExecutor.closeStatements(BufferedBatchStatementExecutor.java:61)
 ~[classes/:?]
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.JdbcBatchStatementExecutor.close(JdbcBatchStatementExecutor.java:37)
 ~[classes/:?]
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.ClickhouseSinkWriter.close(ClickhouseSinkWriter.java:112)
 ~[classes/:?]
                at 
org.apache.seatunnel.engine.server.task.flow.SinkFlowLifeCycle.close(SinkFlowLifeCycle.java:134)
 ~[classes/:?]
                at 
org.apache.seatunnel.engine.server.task.SeaTunnelTask.lambda$close$4(SeaTunnelTask.java:322)
 ~[classes/:?]
                at 
java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) 
~[?:1.8.0_302]
                at 
java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1384) 
~[?:1.8.0_302]
                at 
java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482) 
~[?:1.8.0_302]
                at 
java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:290) 
~[?:1.8.0_302]
                at 
java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731) 
~[?:1.8.0_302]
                at 
java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289) ~[?:1.8.0_302]
                at 
java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056) 
~[?:1.8.0_302]
                at 
java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692) 
~[?:1.8.0_302]
                at 
java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:175) 
~[?:1.8.0_302]
   Caused by: java.lang.ClassCastException: java.lang.Long cannot be cast to 
java.lang.Integer
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.inject.IntInjectFunction.injectFields(IntInjectFunction.java:40)
 ~[classes/:?]
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.JdbcRowConverter.toExternal(JdbcRowConverter.java:79)
 ~[classes/:?]
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.SimpleBatchStatementExecutor.addToBatch(SimpleBatchStatementExecutor.java:42)
 ~[classes/:?]
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.BufferedBatchStatementExecutor.executeBatch(BufferedBatchStatementExecutor.java:51)
 ~[classes/:?]
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.ClickhouseSinkWriter.flush(ClickhouseSinkWriter.java:132)
 ~[classes/:?]
        ... 12 more
   2023-12-06 09:36:27,362 ERROR 
org.apache.seatunnel.engine.server.dag.physical.PhysicalVertex - Job 
mysql_to_ck.json (784593989603950593), Pipeline: [(1/1)], task: [pipeline-1 
[Source[0]-Jdbc2-source_result_0]-SourceTask (1/1)] end with state FAILED and 
Exception: 
org.apache.seatunnel.connectors.seatunnel.clickhouse.exception.ClickhouseConnectorException:
 ErrorCode:[COMMON-10], ErrorDescription:[Flush data operation that in sink 
connector failed] - Clickhouse execute batch statement error
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.ClickhouseSinkWriter.flush(ClickhouseSinkWriter.java:134)
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.ClickhouseSinkWriter.close(ClickhouseSinkWriter.java:109)
        at 
org.apache.seatunnel.engine.server.task.flow.SinkFlowLifeCycle.close(SinkFlowLifeCycle.java:134)
        at 
org.apache.seatunnel.engine.server.task.SeaTunnelTask.lambda$close$4(SeaTunnelTask.java:322)
        at 
java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
        at 
java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1384)
        at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
        at java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:290)
        at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731)
        at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
        at 
java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
        at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
        at 
java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:175)
        Suppressed: java.lang.ClassCastException: java.lang.Long cannot be cast 
to java.lang.Integer
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.inject.IntInjectFunction.injectFields(IntInjectFunction.java:40)
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.JdbcRowConverter.toExternal(JdbcRowConverter.java:79)
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.SimpleBatchStatementExecutor.addToBatch(SimpleBatchStatementExecutor.java:42)
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.BufferedBatchStatementExecutor.executeBatch(BufferedBatchStatementExecutor.java:51)
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.BufferedBatchStatementExecutor.closeStatements(BufferedBatchStatementExecutor.java:61)
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.JdbcBatchStatementExecutor.close(JdbcBatchStatementExecutor.java:37)
                at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.ClickhouseSinkWriter.close(ClickhouseSinkWriter.java:112)
                ... 11 more
   Caused by: java.lang.ClassCastException: java.lang.Long cannot be cast to 
java.lang.Integer
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.inject.IntInjectFunction.injectFields(IntInjectFunction.java:40)
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.JdbcRowConverter.toExternal(JdbcRowConverter.java:79)
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.SimpleBatchStatementExecutor.addToBatch(SimpleBatchStatementExecutor.java:42)
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.executor.BufferedBatchStatementExecutor.executeBatch(BufferedBatchStatementExecutor.java:51)
        at 
org.apache.seatunnel.connectors.seatunnel.clickhouse.sink.client.ClickhouseSinkWriter.flush(ClickhouseSinkWriter.java:132)
        ... 12 more
   
   2023-12-06 09:36:27,363 ERROR 
org.apache.seatunnel.engine.server.dag.physical.SubPlan - Task 
TaskGroupLocation{jobId=784593989603950593, pipelineId=1, taskGroupId=30000} 
Failed in Job mysql_to_ck.json (784593989603950593), Pipeline: [(1/1)], Begin 
to cancel other tasks in this pipeline.
   2023-12-06 09:36:27,363 WARN  
org.apache.seatunnel.engine.server.dag.physical.SubPlan - start cancel job Job 
mysql_to_ck.json (784593989603950593), Pipeline: [(1/1)] count = 0
   2023-12-06 09:36:27,370 WARN  
org.apache.seatunnel.engine.server.dag.physical.PhysicalVertex - The task Job 
mysql_to_ck.json (784593989603950593), Pipeline: [(1/1)], task: [pipeline-1 
[Source[0]-Jdbc2-source_result_0]-SplitEnumerator (1/1)] state in Imap is 
FINISHED, not equals expected state CREATED
   2023-12-06 09:36:27,370 WARN  
org.apache.seatunnel.engine.server.dag.physical.PhysicalVertex - The task Job 
mysql_to_ck.json (784593989603950593), Pipeline: [(1/1)], task: [pipeline-1 
[Source[0]-Jdbc2-source_result_0]-SourceTask (1/1)] state in Imap is FINISHED, 
not equals expected state CREATED
   2023-12-06 09:36:27,372 WARN  
org.apache.seatunnel.engine.server.dag.physical.PhysicalVertex - The task Job 
mysql_to_ck.json (784593989603950593), Pipeline: [(1/1)], task: [pipeline-1 
[Source[0]-Jdbc2-source_result_0]-SplitEnumerator (1/1)] state in Imap is 
FINISHED, not equals expected state SCHEDULED
   2023-12-06 09:36:27,373 WARN  
org.apache.seatunnel.engine.server.dag.physical.PhysicalVertex - Task Job 
mysql_to_ck.json (784593989603950593), Pipeline: [(1/1)], task: [pipeline-1 
[Source[0]-Jdbc2-source_result_0]-SplitEnumerator (1/1)] is already in terminal 
state FINISHED
   2023-12-06 09:36:27,373 WARN  
org.apache.seatunnel.engine.server.dag.physical.PhysicalVertex - The task Job 
mysql_to_ck.json (784593989603950593), Pipeline: [(1/1)], task: [pipeline-1 
[Source[0]-Jdbc2-source_result_0]-SourceTask (1/1)] state in Imap is FINISHED, 
not equals expected state SCHEDULED
   2023-12-06 09:36:27,373 WARN  
org.apache.seatunnel.engine.server.dag.physical.PhysicalVertex - Task Job 
mysql_to_ck.json (784593989603950593), Pipeline: [(1/1)], task: [pipeline-1 
[Source[0]-Jdbc2-source_result_0]-SourceTask (1/1)] is already in terminal 
state FINISHED
   ```
   
   
   ### Zeta or Flink or Spark Version
   
   _No response_
   
   ### Java or Scala Version
   
   _No response_
   
   ### Screenshots
   
   _No response_
   
   ### Are you willing to submit PR?
   
   - [ ] 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: commits-unsubscr...@seatunnel.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to