seata saga1.5.2 重试机制在哪配置?我在状态图里面配了Retry,但是没效果

zpjtge22  于 3个月前  发布在  其他
关注(0)|答案(2)|浏览(115)
  • I have searched the issues of this repository and believe that this is not a duplicate.

Ⅰ. Issue Description

Ⅱ. Describe what happened

If there is an exception, please attach the exception trace:

Just paste your stack trace here!

Ⅲ. Describe what you expected to happen

Ⅳ. How to reproduce it (as minimally and precisely as possible)

  1. xxx
  2. xxx
  3. xxx

Ⅴ. Anything else we need to know?

Ⅵ. Environment:

  • JDK version :
  • Seata version:
  • OS :
  • Others:
wnvonmuf

wnvonmuf2#

#5077

三种方案:

配置server.maxRollbackRetryTimeout:根据自己的需要配置吧。但是超时后不重试,会导致事务不一致,需要人工介入处理数据。
(我公司实际上也没有使用SAGA,也不大清楚这个配置多少合适,抱歉)
正向重试(推荐):经常出现补偿失败的方法,改下代码,出现异常时,代码里判断无法继续补偿时,可以返回一个状态码(这个我得去重新看下源码),让server端发起正向重试。保证事务一致性。
中止重试:和方案2差不多,只是返回的状态不一样。但这种和方案1一样,无法使事务最终一致。需要人工介入处理数据。

方案1完整的配置是seata.server.maxRollbackRetryTimeout吗 我配了不起作用呢?

相关问题