Ⅰ. Issue Description
spring cloud alibaba 整合 sharding jdbc + mybatis plus + nacos + seata 1.5.2,在服务之间调用时, SeataATShardingTransactionManager 的 commit 里 seataTransactionHolder get 一直为空,在之前 begin 里 SeataTransactionHolder set是有值
Ⅱ. Describe what happened
在服务之间调用时,事务commit错误如下:
调用服务
被调用服务
错误信息:
服务中seate配置如下
Ⅲ. Describe what you expected to happen
请教一下,为什么会为空
Ⅵ. Environment:
- JDK version : 1.8
- Seata version: 1.5.2
- OS : mac os
- Others: spring cloud alibaba 2021.0.1.0, mybatis plus 3.5.2, sharding jdbc 4.1.1
2条答案
按热度按时间tsm1rwdh1#
应该是sharding jdbc和seata的兼容问题,seta是被sharding jdbc被动集成的,可以去问下他们那块
jaxagkaj2#
应该是sharding jdbc和seata的兼容问题,seta是被sharding jdbc被动集成的,可以去问下他们那块
覆盖重写了 SeataTransactionHolder get的地方。没有的话就去读取当前全局事务,这样改完倒是可以用了。但不知道是不是会发生其他问题。请教一下,这样会有问题吗。