开发者社区 > 云原生 > 正文

请问seata 可以排除某个表的回滚吗?

问题1:请问seata 可以排除某个表的回滚吗? 问题2:但是这个表是包好几层的里面,主要是flowable里面有个生成id的机制,它2500个自增id 用完才更新库,导致刚好有几率更新的时候异常导致更新自增id出问题?

展开
收起
十一0204 2023-06-28 13:01:19 124 0
2 条回答
写回答
取消 提交回答
  • 资深技术专家,全网粉丝10W+。主攻技术开发,擅长分享、写文、测评。

    在Seata中,无法直接排除某个表的回滚操作。Seata是一个分布式事务框架,旨在保证参与事务的所有操作的原子性、一致性、隔离性和持久性。当事务回滚时,Seata会回滚所有参与事务的操作,包括涉及的所有表。 自定义回滚逻辑:在您的业务代码中,可以针对特定表的回滚操作进行自定义逻辑。您可以通过编程的方式,在事务回滚时手动处理这个特定表的回滚操作,或者在回滚之前检查是否需要执行回滚操作。这样,您可以在需要排除回滚的表上实现自定义的回滚逻辑。

    调整数据处理方式:如果特定表的回滚操作会导致问题,您可以考虑调整数据处理的方式,以避免回滚操作对自增ID等数据造成影响。例如,可以修改业务逻辑,避免在事务中直接依赖自增ID,或者更改自增ID的生成方式。

    2023-06-28 13:37:46
    赞同 展开评论 打赏
  • 意中人就是我呀!

    回答1:直接不要代理。 回答2:这个方法上加个全局事务注解改一下事务传播。 此回答整理自钉群“Seata(分布式事务)”

    2023-06-28 13:35:24
    赞同 展开评论 打赏
问答标签:
问答地址:

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

相关电子书

更多
《Seata 1.3 新特性以及如何参与社区》 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载