apache / apache/incubator-seata
@GlobalTransactional 第一次commit成功后,再调用这个接口,就报错
- Dominant language
- Java
- Stars
- 26k
- Forks
- 8.8k
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 4
Description
三个服务 A->B->C
都加了@GlobalTransactional
业务逻辑均正常
第一次执行,能够正常commit
第二次开始,就提示错误
如果都不加@GlobalTransactional,三个服务写表均正常,无论提交次数多少
这是第一次执行成功后,三个服务的截图



seata server 日志截图

==================================================================================
==================================================================================
第二次执行开始,在A服务就报错的截图


这是A服务SQL的截图

这是seata server 日志截图

==================================================================================
==================================================================================
三个服务的seata client配置yml截图

使用到的组件
seata server 1.2.0

nacos 1.2.1

mybatis-plus 3.3.2

openfeign+okhttp

druid 1.1.16

数据库 oracle 18c
ojdbc8

spring-cloud Hoxton.SR3
spring-cloud-alibaba 2.2.1.RELEASE
spring-boot 2.2.5.RELEASE
spring-cloud-alibaba-seata 2.2.0.RELEASE
容器 undertow
Contributor guide
Research direction
Start by reproducing the second-call failure with @GlobalTransactional across services A, B, and C using the reported Seata 1.2.0 configuration. Inspect the A-service and Seata server logs alongside the client YAML and SQL screenshots; done means identifying the cause and confirming repeated commits succeed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, spring-boot
- Domain
- distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100