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]

Reply via email to