sin70611 opened a new issue, #10449: URL: https://github.com/apache/seatunnel/issues/10449
### 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 when I used ORACLE-CDC to sink mutitables from diffrent schemas to mysql,I got XA lock in mysql. And I can't find the lock transaction info with the below mysql query , and got no result in binlog : 1. SELECT * FROM information_schema.INNODB_TRX WHERE trx_state = 'PREPARED' 2. mysqlbinlog -v --base64-output=DECODE-ROWS| grep 'xxx' qeury with the lock sql: xa recover convert xid ; got the lock data: 0x313037313235393037363639333835323136310000000000000000000000000000000000948F87269C010000541281C2 **then I found when I configed the schema with just one, this XA transaction disappeared !!!** ### SeaTunnel Version 2.3.9 ### SeaTunnel Config ```conf { "env" : { "parallelism":1, "job.mode" : "STREAMING", "job.name" : "XXX", "checkpoint.interval" : 5000, "read_limit.bytes_per_second" : 7000000, "read_limit.rows_per_second" : 400 }, "source" : [ { "base-url" : "jdbc:oracle:thin:@XXX.XXX.XXX.XXX:1521:XXX", "startup.mode" : "latest", "table-names" : [ "db.A.xxx","db.B.xxx","db.B.xxx","db.C.xxx" ], "database-names" : [ "db" ], "schema-names" : [ "A","B","C" ], "plugin_name" : "Oracle-CDC", "skip_analyze" : true, "username" : "XX", "password" : "XX", "source.reader.close.timeout" : 120000, "debezium" : { "include.schema.changes": true, "decimal.handling.mode": "string" } } ], "sink" : [ { "url" : "jdbc:mysql://XXX.XXX.XX.XX:3306/XXX", "user" : "XXX", "password" : "XXX", "database" : "XXX", "xa_data_source_class_name" : "com.mysql.cj.jdbc.MysqlXADataSource", "driver" : "com.mysql.cj.jdbc.Driver", "generate_sink_sql" : true, "plugin_name" : "jdbc", "table" : "ABC_${table_name}", "field_ide" : "LOWERCASE", "is_exactly_once" : true } ] } ``` ### Running Command ```shell just submit with the url: {{host}}:5801/hazelcast/rest/maps/submit-job ``` ### Error Exception ```log java.lang.RuntimeException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: org.apache.seatunnel.connectors.seatunnel.jdbc.exception.JdbcConnectorException: ErrorCode:[JDBC-03], ErrorDescription:[Xa operation failed, such as (commit, rollback) etc..] - unable to start xa transaction at org.apache.seatunnel.engine.server.task.flow.SinkFlowLifeCycle.received(SinkFlowLifeCycle.java:302) at org.apache.seatunnel.engine.server.task.flow.SinkFlowLifeCycle.received(SinkFlowLifeCycle.java:70) at org.apache.seatunnel.engine.server.task.SeaTunnelTransformCollector.collect(SeaTunnelTransformCollector.java:39) at org.apache.seatunnel.engine.server.task.SeaTunnelTransformCollector.collect(SeaTunnelTransformCollector.java:27) at org.apache.seatunnel.engine.server.task.group.queue.IntermediateBlockingQueue.handleRecord(IntermediateBlockingQueue.java:70) at org.apache.seatunnel.engine.server.task.group.queue.IntermediateBlockingQueue.collect(IntermediateBlockingQueue.java:50) at org.apache.seatunnel.engine.server.task.flow.IntermediateQueueFlowLifeCycle.collect(IntermediateQueueFlowLifeCycle.java:51) at org.apache.seatunnel.engine.server.task.TransformSeaTunnelTask.collect(TransformSeaTunnelTask.java:72) at org.apache.seatunnel.engine.server.task.SeaTunnelTask.stateProcess(SeaTunnelTask.java:169) at org.apache.seatunnel.engine.server.task.TransformSeaTunnelTask.call(TransformSeaTunnelTask.java:77) at org.apache.seatunnel.engine.server.TaskExecutionService$BlockingWorker.run(TaskExecutionService.java:694) at org.apache.seatunnel.engine.server.TaskExecutionService$NamedTaskWrapper.run(TaskExecutionService.java:1019) at org.apache.seatunnel.api.tracing.MDCRunnable.run(MDCRunnable.java:43) 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(T hreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.RuntimeException: java.util.concurrent.ExecutionException: org.apache.seatunnel.connectors.seatunnel.jdbc.exception.JdbcConnectorException: ErrorCode:[JDBC-03], ErrorDescription:[Xa operation failed, such as (commit, rollback) etc..] - unable to start xa transaction at org.apache.seatunnel.api.sink.multitablesink.MultiTableSinkWriter.prepareCommit(MultiTableSinkWriter.java:276) at org.apache.seatunnel.engine.server.task.flow.SinkFlowLifeCycle.received(SinkFlowLifeCycle.java:201) ... 17 more Caused by: java.util.concurrent.ExecutionException: org.apache.seatunnel.connectors.seatunnel.jdbc.exception.JdbcConnectorException: ErrorCode:[JDBC-03], ErrorDescription:[Xa operation failed, such as (commit, rollback) etc..] - unable to start xa transaction at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:192) at org.apache.seatunnel.api. sink.multitablesink.MultiTableSinkWriter.prepareCommit(MultiTableSinkWriter.java:274) ... 18 more Caused by: org.apache.seatunnel.connectors.seatunnel.jdbc.exception.JdbcConnectorException: ErrorCode:[JDBC-03], ErrorDescription:[Xa operation failed, such as (commit, rollback) etc..] - unable to start xa transaction at org.apache.seatunnel.connectors.seatunnel.jdbc.sink.JdbcExactlyOnceSinkWriter.beginTx(JdbcExactlyOnceSinkWriter.java:196) at org.apache.seatunnel.connectors.seatunnel.jdbc.sink.JdbcExactlyOnceSinkWriter.prepareCommit(JdbcExactlyOnceSinkWriter.java:157) at org.apache.seatunnel.api.sink.SinkWriter.prepareCommit(SinkWriter.java:75) at org.apache.seatunnel.api.sink.multitablesink.MultiTableSinkWriter.lambda$prepareCommit$4(MultiTableSinkWriter.java:259) ... 6 more Caused by: org.apache.seatunnel.connectors.seatunnel.jdbc.exception.JdbcConnectorException: ErrorCode:[JDBC-03], ErrorDescription:[Xa operation failed, such as (commit, rollback) etc..] - unable to start XA trans action, xid: 201:3130373132343538363831333834393630303100000000000000000000000000000000005f4357269c010000:7b31b3dd, error -8: Xid given as an argument is already known to the resource manager. [XAER_DUPID: The XID already exists] at org.apache.seatunnel.connectors.seatunnel.jdbc.internal.xa.XaFacadeImplAutoLoad.wrapException(XaFacadeImplAutoLoad.java:309) at org.apache.seatunnel.connectors.seatunnel.jdbc.internal.xa.XaFacadeImplAutoLoad.access$800(XaFacadeImplAutoLoad.java:69) at org.apache.seatunnel.connectors.seatunnel.jdbc.internal.xa.XaFacadeImplAutoLoad$Command.lambda$fromRunnable$0(XaFacadeImplAutoLoad.java:418) at org.apache.seatunnel.connectors.seatunnel.jdbc.internal.xa.XaFacadeImplAutoLoad$Command.lambda$fromRunnable$4(XaFacadeImplAutoLoad.java:457) at org.apache.seatunnel.connectors.seatunnel.jdbc.internal.xa.XaFacadeImplAutoLoad.execute(XaFacadeImplAutoLoad.java:292) at org.apache.seatunnel.connectors.seatunnel.jdbc.internal.xa.XaFacadeImplAutoLoad.start(XaFacadeImplAuto Load.java:179) at org.apache.seatunnel.connectors.seatunnel.jdbc.sink.JdbcExactlyOnceSinkWriter.beginTx(JdbcExactlyOnceSinkWriter.java:194) ... 9 more ``` ### Zeta or Flink or Spark Version zeta ### 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: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
