seata 在 OpenFeign fallback 下不回滚事务

A 通过 openfeign 调用 B,并配置了 fallback。

当 B 抛出异常的时候,B 没有写入操作,但是 A 却写入了,并没有回滚。

当然去掉 fallback 后就可以回滚。请问这种情况怎么处理呢?


Seata
fallback
2023-04-06 14:18:46
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Potatoes先生

你这个问题我碰到过,有两种情况,第一种,回滚的话要确保xid是在传递的,否则不会有分布式事务。

第二,要在调用feign之后,判断返回,比如我们是统一了返回结构的,如果发生异常,调用端需要判断请求B服务是否成功,如果返回了code=错误,就要手动抛出异常,如果不想这么做,我记得有一个全局的熔断异常,捕获到之后进行回滚操作,但无论哪种方式,你都应该判断feign之后是否成功

分享
微博
QQ
微信
回复
2023-04-06 16:14:18
相关问题
space-betweenapi6 下不生效的问题
3497浏览 • 1回复 待解决
请问,seata 支持 OceanBase吗?
1445浏览 • 1回复 待解决
Redis的事务是什么有懂的吗?
544浏览 • 1回复 待解决
jms linux 下怎么应用?
267浏览 • 1回复 待解决
OceanBase中,如何修改资源限制?
764浏览 • 1回复 待解决
IOT医疗领域有哪些应用?
1501浏览 • 1回复 待解决
如何把导航默认最底下显示?
398970浏览 • 1回复 待解决
虚拟机上运行不了鸿蒙项目
3706浏览 • 1回复 待解决
polardb跑ceph共享存储里面吗?
504浏览 • 1回复 待解决
PolarDB云下用的多吗?
863浏览 • 1回复 待解决