techa03 opened a new issue #9460:
URL: https://github.com/apache/shardingsphere/issues/9460
### Which version of ShardingSphere did you use?
4.1.1+springcloudalibaba seata 2.2.5.RELEASE
### Which project did you use? ShardingSphere-JDBC or ShardingSphere-Proxy?
ShardingSphere-JDBC
### Expected behavior
```
@DubboReference
private SeckillService seckillService;
@DubboReference
private GoodsService goodsService;
/**
* 测试seata分布式事务
*/
@GetMapping("/test")
@GlobalTransactional
public void testGlobalTransaction() {
Goods goods = new Goods();
goods.setName("test");
goodsService.addGoods(goods, null);
Seckill seckill = seckillService.getById(1001L);
seckill.setNumber(seckill.getNumber() - 1);
seckillService.saveOrUpdate(seckill);
// 测试异常情况
throw new RuntimeException();
}
```
I expected the global transation can be rolled back
### Actual behavior
when I use mysql-connector-java 8.0.21 driver it works fine,but when I
swtich to 8.0.22 the console prints the error message like this:
```
17:21:15.973 [DubboServerHandler-192.168.2.143:20880-thread-21] INFO
ShardingSphere-SQL - Logic SQL: INSERT INTO undo_log (branch_id, xid, context,
rollback_info, log_status, log_created, log_modified) VALUES (?, ?, ?, ?, ?,
now(6), now(6))
17:21:15.973 [DubboServerHandler-192.168.2.143:20880-thread-21] INFO
ShardingSphere-SQL - SQLStatement:
InsertStatementContext(super=CommonSQLStatementContext(sqlStatement=org.apache.shardingsphere.sql.parser.sql.statement.dml.InsertStatement@1bf41792,
tablesContext=org.apache.shardingsphere.sql.parser.binder.segment.table.TablesContext@fa81293),
tablesContext=org.apache.shardingsphere.sql.parser.binder.segment.table.TablesContext@fa81293,
columnNames=[branch_id, xid, context, rollback_info, log_status, log_created,
log_modified], insertValueContexts=[InsertValueContext(parametersCount=5,
valueExpressions=[ParameterMarkerExpressionSegment(startIndex=109,
stopIndex=109, parameterMarkerIndex=0),
ParameterMarkerExpressionSegment(startIndex=112, stopIndex=112,
parameterMarkerIndex=1), ParameterMarkerExpressionSegment(startIndex=115,
stopIndex=115, parameterMarkerIndex=2),
ParameterMarkerExpressionSegment(startIndex=118, stopIndex=118,
parameterMarkerIndex=3), ParameterMarkerExpressio
nSegment(startIndex=121, stopIndex=121, parameterMarkerIndex=4),
org.apache.shardingsphere.sql.parser.sql.segment.dml.item.ExpressionProjectionSegment@6bb8a8cd,
org.apache.shardingsphere.sql.parser.sql.segment.dml.item.ExpressionProjectionSegment@309a9f30],
parameters=[102455421153374208, 192.168.2.143:8091:102455407425417216,
serializer=jackson, javax.sql.rowset.serial.SerialBlob@1af7721d, 0])],
generatedKeyContext=Optional.empty)
17:21:15.973 [DubboServerHandler-192.168.2.143:20880-thread-21] INFO
ShardingSphere-SQL - Actual SQL: ds0 ::: INSERT INTO undo_log (branch_id, xid,
context, rollback_info, log_status, log_created, log_modified) VALUES (?, ?, ?,
?, ?, now(6), now(6)) ::: [102455421153374208,
192.168.2.143:8091:102455407425417216, serializer=jackson,
javax.sql.rowset.serial.SerialBlob@1af7721d, 0]
17:21:16.026 [rpcDispatch_RMROLE_1_2_8] INFO
i.s.c.r.p.c.RmBranchRollbackProcessor - rm handle branch rollback
process:xid=192.168.2.143:8091:102455407425417216,branchId=102455421153374208,branchType=AT,resourceId=jdbc:mysql://mysql:3306/seckill,applicationData=null
17:21:16.067 [rpcDispatch_RMROLE_1_2_8] INFO i.s.r.AbstractRMHandler -
Branch Rollbacking: 192.168.2.143:8091:102455407425417216 102455421153374208
jdbc:mysql://mysql:3306/seckill
17:21:16.087 [rpcDispatch_RMROLE_1_2_8] INFO ShardingSphere-SQL - Logic
SQL: SELECT * FROM undo_log WHERE branch_id = ? AND xid = ? FOR UPDATE
17:21:16.087 [rpcDispatch_RMROLE_1_2_8] INFO ShardingSphere-SQL -
SQLStatement:
SelectStatementContext(super=CommonSQLStatementContext(sqlStatement=org.apache.shardingsphere.sql.parser.sql.statement.dml.SelectStatement@74c75df4,
tablesContext=org.apache.shardingsphere.sql.parser.binder.segment.table.TablesContext@244d9163),
tablesContext=org.apache.shardingsphere.sql.parser.binder.segment.table.TablesContext@244d9163,
projectionsContext=ProjectionsContext(startIndex=7, stopIndex=7,
distinctRow=false, projections=[ShorthandProjection(owner=Optional.empty,
actualColumns=[ColumnProjection(owner=null, name=id, alias=Optional.empty),
ColumnProjection(owner=null, name=branch_id, alias=Optional.empty),
ColumnProjection(owner=null, name=xid, alias=Optional.empty),
ColumnProjection(owner=null, name=context, alias=Optional.empty),
ColumnProjection(owner=null, name=rollback_info, alias=Optional.empty),
ColumnProjection(owner=null, name=log_status, alias=Optional.empty),
ColumnProjection(own
er=null, name=log_created, alias=Optional.empty), ColumnProjection(owner=null,
name=log_modified, alias=Optional.empty), ColumnProjection(owner=null,
name=ext, alias=Optional.empty)])]),
groupByContext=org.apache.shardingsphere.sql.parser.binder.segment.select.groupby.GroupByContext@63949b71,
orderByContext=org.apache.shardingsphere.sql.parser.binder.segment.select.orderby.OrderByContext@42b32cdc,
paginationContext=org.apache.shardingsphere.sql.parser.binder.segment.select.pagination.PaginationContext@cd5f183,
containsSubquery=false)
17:21:16.087 [rpcDispatch_RMROLE_1_2_8] INFO ShardingSphere-SQL - Actual
SQL: ds0 ::: SELECT * FROM undo_log WHERE branch_id = ? AND xid = ? FOR UPDATE
::: [102455421153374208, 192.168.2.143:8091:102455407425417216]
17:21:16.098 [rpcDispatch_RMROLE_1_2_8] ERROR
i.s.r.d.u.p.JacksonUndoLogParser - json decode exception, Unexpected character
('¬' (code 172)): expected a valid value (JSON String, Number, Array, Object or
token 'null', 'true' or 'false')
at [Source: (byte[])"�� sr "javax.sql.rowset.serial.SerialBlob��kQ��� J
lenJ origLenL blobt Ljava/sql/Blob;[ buft [Bxp E Epur
[B���T� xp
E{"@class":"io.seata.rm.datasource.undo.BranchUndoLog","xid":"192.168.2.143:8091:102455407425417216","branchId":102455421153374208,"sqlUndoLogs":["java.util.ArrayList",[{"@class":"io.seata.rm.datasource.undo.SQLUndoLog","sqlType":"INSERT","tableName":"seckill","beforeImage":{"@class":"io.seata.rm.datasource.sql.struct.TableRecords$EmptyTableRecords","t"[truncated
1509 bytes]; line: 1, column: 2]
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('¬'
(code 172)): expected a valid value (JSON String, Number, Array, Object or
token 'null', 'true' or 'false')
at [Source: (byte[])"�� sr "javax.sql.rowset.serial.SerialBlob��kQ��� J
lenJ origLenL blobt Ljava/sql/Blob;[ buft [Bxp E Epur
[B���T� xp
E{"@class":"io.seata.rm.datasource.undo.BranchUndoLog","xid":"192.168.2.143:8091:102455407425417216","branchId":102455421153374208,"sqlUndoLogs":["java.util.ArrayList",[{"@class":"io.seata.rm.datasource.undo.SQLUndoLog","sqlType":"INSERT","tableName":"seckill","beforeImage":{"@class":"io.seata.rm.datasource.sql.struct.TableRecords$EmptyTableRecords","t"[truncated
1509 bytes]; line: 1, column: 2]
at
com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1851)
at
com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:707)
at
com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:632)
at
com.fasterxml.jackson.core.json.UTF8StreamJsonParser._handleUnexpectedValue(UTF8StreamJsonParser.java:2686)
at
com.fasterxml.jackson.core.json.UTF8StreamJsonParser._nextTokenNotInObject(UTF8StreamJsonParser.java:865)
at
com.fasterxml.jackson.core.json.UTF8StreamJsonParser.nextToken(UTF8StreamJsonParser.java:757)
at
com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:4664)
at
com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4513)
at
com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3529)
at
io.seata.rm.datasource.undo.parser.JacksonUndoLogParser.decode(JacksonUndoLogParser.java:139)
at
io.seata.rm.datasource.undo.AbstractUndoLogManager.undo(AbstractUndoLogManager.java:276)
at
io.seata.rm.datasource.DataSourceManager.branchRollback(DataSourceManager.java:178)
at
io.seata.rm.AbstractRMHandler.doBranchRollback(AbstractRMHandler.java:125)
at io.seata.rm.AbstractRMHandler$2.execute(AbstractRMHandler.java:67)
at io.seata.rm.AbstractRMHandler$2.execute(AbstractRMHandler.java:63)
at
io.seata.core.exception.AbstractExceptionHandler.exceptionHandleTemplate(AbstractExceptionHandler.java:116)
at io.seata.rm.AbstractRMHandler.handle(AbstractRMHandler.java:63)
at io.seata.rm.DefaultRMHandler.handle(DefaultRMHandler.java:63)
at
io.seata.core.protocol.transaction.BranchRollbackRequest.handle(BranchRollbackRequest.java:35)
at io.seata.rm.AbstractRMHandler.onRequest(AbstractRMHandler.java:150)
at
io.seata.core.rpc.processor.client.RmBranchRollbackProcessor.handleBranchRollback(RmBranchRollbackProcessor.java:63)
at
io.seata.core.rpc.processor.client.RmBranchRollbackProcessor.process(RmBranchRollbackProcessor.java:58)
at
io.seata.core.rpc.netty.AbstractNettyRemoting.lambda$processMessage$2(AbstractNettyRemoting.java:265)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at
io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:834)
17:21:16.117 [rpcDispatch_RMROLE_1_2_8] INFO i.s.r.d.DataSourceManager -
branchRollback failed. branchType:[AT],
xid:[192.168.2.143:8091:102455407425417216], branchId:[102455421153374208],
resourceId:[jdbc:mysql://mysql:3306/seckill], applicationData:[null].
reason:[Branch session rollback failed and try again later xid =
192.168.2.143:8091:102455407425417216 branchId = 102455421153374208
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('¬' (code
172)): expected a valid value (JSON String, Number, Array, Object or token
'null', 'true' or 'false')
at [Source: (byte[])"�� sr "javax.sql.rowset.serial.SerialBlob��kQ��� J
lenJ origLenL blobt Ljava/sql/Blob;[ buft [Bxp E Epur
[B���T� xp
E{"@class":"io.seata.rm.datasource.undo.BranchUndoLog","xid":"192.168.2.143:8091:102455407425417216","branchId":102455421153374208,"sqlUndoLogs":["java.util.ArrayList",[{"@class":"io.seata.rm.datasource.undo.SQLUndoLog","sqlType":"INSERT","tableName":"seckill","beforeImage":{"@class":"io.seata.rm.datasource.sql.struct.TableRecords$EmptyTableRecords","t"[truncated
1509 bytes]; line: 1, column: 2]]
17:21:16.122 [rpcDispatch_RMROLE_1_2_8] INFO i.s.r.AbstractRMHandler -
Branch Rollbacked result: PhaseTwo_RollbackFailed_Retryable
17:21:16.144 [http-nio-8080-exec-3] INFO i.s.t.a.DefaultGlobalTransaction -
[192.168.2.143:8091:102455407425417216] rollback status: RollbackRetrying
17:21:16.155 [http-nio-8080-exec-3] WARN i.s.t.a.DefaultFailureHandlerImpl
- Retrying to rollback transaction[192.168.2.143:8091:102455407425417216]
17:21:16.168 [http-nio-8080-exec-3] ERROR o.s.w.c.GlobalExceptionHandler -
null
java.lang.RuntimeException: null
at
org.seckill.web.controller.GoodsController.add(GoodsController.java:46)
at
org.seckill.web.controller.GoodsController$$FastClassBySpringCGLIB$$1.invoke(<generated>)
at
org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:779)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
at
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)
at
io.seata.spring.annotation.GlobalTransactionalInterceptor$1.execute(GlobalTransactionalInterceptor.java:150)
at
io.seata.tm.api.TransactionalTemplate.execute(TransactionalTemplate.java:104)
at
io.seata.spring.annotation.GlobalTransactionalInterceptor.handleGlobalTransaction(GlobalTransactionalInterceptor.java:147)
at
io.seata.spring.annotation.GlobalTransactionalInterceptor.invoke(GlobalTransactionalInterceptor.java:122)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:750)
at
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:692)
at
org.seckill.web.controller.GoodsController$$EnhancerBySpringCGLIB$$1.add(<generated>)
at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at
org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:197)
at
org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:141)
at
org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)
at
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:894)
at
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
at
org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1060)
at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:962)
at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
at
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
at
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at
org.springframework.cloud.sleuth.instrument.web.servlet.TracingFilter.doFilter(TracingFilter.java:68)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at
org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:61)
at
org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:108)
at
org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:137)
at
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
at
org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
at
org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
at
org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
at
org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
at
org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
at
org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:387)
at
org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
at
org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at
com.github.xiaoymin.knife4j.spring.filter.ProductionSecurityFilter.doFilter(ProductionSecurityFilter.java:53)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at
com.github.xiaoymin.knife4j.spring.filter.SecurityBasicAuthFilter.doFilter(SecurityBasicAuthFilter.java:90)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at
org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at
org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at
org.springframework.session.web.http.SessionRepositoryFilter.doFilterInternal(SessionRepositoryFilter.java:141)
at
org.springframework.session.web.http.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:82)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at
org.springframework.cloud.sleuth.instrument.web.servlet.TracingFilter.doFilter(TracingFilter.java:89)
at
org.springframework.cloud.sleuth.autoconfig.instrument.web.LazyTracingFilter.doFilter(TraceWebServletConfiguration.java:121)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at
org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93)
at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at
org.apache.catalina.core.StandardContextValve.__invoke(StandardContextValve.java:97)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:41002)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374)
at
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:888)
at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1597)
at
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:834)
17:21:16.658 [rpcDispatch_RMROLE_1_3_8] INFO
i.s.c.r.p.c.RmBranchRollbackProcessor - rm handle branch rollback
process:xid=192.168.2.143:8091:102455407425417216,branchId=102455421153374208,branchType=AT,resourceId=jdbc:mysql://mysql:3306/seckill,applicationData=null
17:21:16.658 [rpcDispatch_RMROLE_1_3_8] INFO i.s.r.AbstractRMHandler -
Branch Rollbacking: 192.168.2.143:8091:102455407425417216 102455421153374208
jdbc:mysql://mysql:3306/seckill
```
### Reason analyze (If you can)
I guess there may be a compatible problems with mysql-connector-java 8.0.22
### Steps to reproduce the behavior, such as: SQL to execute, sharding rule
configuration, when exception occur etc.
### Example codes for reproduce this issue (such as a github link).
```
@DubboReference
private SeckillService seckillService;
@DubboReference
private GoodsService goodsService;
/**
* 测试seata分布式事务
*/
@GetMapping("/test")
@GlobalTransactional
public void testGlobalTransaction() {
Goods goods = new Goods();
goods.setName("test");
goodsService.addGoods(goods, null);
Seckill seckill = seckillService.getById(1001L);
seckill.setNumber(seckill.getNumber() - 1);
seckillService.saveOrUpdate(seckill);
// 测试异常情况
throw new RuntimeException();
}
```
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[email protected]