apache / apache/incubator-seata
seata 全局事务第一次调用feign接口的时候报错:Caused by: io.seata.core.exception.RmTransactionException: Response[ TransactionException[Could not found global transaction xid = 10.100.1.231:8091:135821451987939328, may be has finished.] ]
- Dominant language
- Java
- Stars
- 26k
- Forks
- 8.8k
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 4
Description
1、引入的依赖包为:
com.alibaba.cloud
spring-cloud-starter-alibaba-seata
2.1.3.RELEASE
io.seata
seata-spring-boot-starter
1.4.0
seata 服务端报错 : Catch TransactionException while do RPC, request: xid=10.100.1.231:8091:135821451987939328,branchType=AT,resourceId=……
io.seata.core.exception.GlobalTransactionException: Could not found global transaction xid = 10.100.1.231:8091:135821451987939328, may be has finished.
at io.seata.server.coordinator.AbstractCore.assertGlobalSessionNotNull(AbstractCore.java:120)
at io.seata.server.coordinator.AbstractCore.branchRegister(AbstractCore.java:71)
at io.seata.server.coordinator.DefaultCore.branchRegister(DefaultCore.java:97)
at io.seata.server.coordinator.DefaultCoordinator.doBranchRegister(DefaultCoordinator.java:192)
at io.seata.server.AbstractTCInboundHandler$4.execute(AbstractTCInboundHandler.java:184)
at io.seata.server.AbstractTCInboundHandler$4.execute(AbstractTCInboundHandler.java:179)
at io.seata.core.exception.AbstractExceptionHandler.exceptionHandleTemplate(AbstractExceptionHandler.java:116)
at io.seata.server.AbstractTCInboundHandler.handle(AbstractTCInboundHandler.java:179)
at io.seata.core.protocol.transaction.BranchRegisterRequest.handle(BranchRegisterRequest.java:136)
at io.seata.server.coordinator.DefaultCoordinator.onRequest(DefaultCoordinator.java:427)
at io.seata.core.rpc.processor.server.ServerOnRequestProcessor.onRequestMessage(ServerOnRequestProcessor.java:116)
at io.seata.core.rpc.processor.server.ServerOnRequestProcessor.process(ServerOnRequestProcessor.java:77)
at io.seata.core.rpc.netty.AbstractNettyRemoting.lambda$processMessage$2(AbstractNettyRemoting.java:278)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.lang.Thread.run(Thread.java:748)
<==
第一次请求这个feign的时候报错
Contributor guide
Research direction
Reproduce the first Feign call with the listed Spring Cloud Alibaba Seata 2.1.3.RELEASE and Seata 1.4.0 dependencies. Start at io.seata.server.coordinator.AbstractCore.branchRegister and trace the xid lifecycle through the server stack trace; done means the first Feign request no longer reports that the global transaction cannot be found.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, spring-boot
- Domain
- backend, distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 28/100