收藏
回答

云数据事务回滚失败

框架类型 问题类型 终端类型 AppID 环境ID 基础库版本
小程序 Bug 微信安卓客户端 wx59c9f815413593a9 yunshang-test-3g4dczsl9cb7a514 2.10.0
transaction error { code'DATABASE_TRANSACTION_FAIL',
  message:'[FailedOperation.Abort] Abortfail. Retry your request, but if the problem persists,contact us.',
  requestId: '1611285337058_0.4232298341246894_33595297-177281714b9_3' }
回答关注问题邀请回答
收藏

3 个回答

  • @
    @
    2021-01-22

    已知问题:不是SDK bug

    是目前设计成这样的,因为事务里用where ,进行多文档操作很容易出现事务冲突、

    怕用户处理不好这种情况,目前没有开放这个功能。

    (总结:之前是支持的,然后出于以上原因,目前关掉了这个功能,现在只可以事务中用where get建议文档中补充下)

    2021-01-22
    有用 1
    回复 2
    • 泡影
      泡影
      2021-05-14
      确实是这样,事务中我用 where + remove 回滚失败。删除还是用 doc + remove 更好,回滚不会出错。
      2021-05-14
      回复
    • 泡影
      泡影
      2021-05-14
      谢谢!
      2021-05-14
      回复
  • 元晓
    元晓
    2023-06-23

    我擦,21年的问题, 今天都没解决?

    2023-06-23
    有用
    回复
  • 他乡之客
    他乡之客
    2021-01-22

    您好,请问您这边情况是必现的吗?还是偶然出现的

    2021-01-22
    有用
    回复 4
    • @
      @
      2021-01-22
      必现
      2021-01-22
      回复
    • 他乡之客
      他乡之客
      2021-01-22回复@
      您好,这个地方是mongodb内核的一个行为,这里启动事务后,不要直接abort
      2021-01-22
      回复
    • 他乡之客
      他乡之客
      2021-01-22
      业务逻辑也比较奇怪,为什么会启动一个事务后,直接abort呢?浪费性能
      2021-01-22
      回复
    • @
      @
      2021-01-22回复他乡之客
      业务逻辑奇怪吗?余额减钱,后判断余额为负数回滚事务,就一次修改。当然下面是我刚接触到事务,随便写的测试事务用的,但是感觉业务逻辑不奇怪吧,跟腾讯云同学沟通了,初步认为是where查询有bug,换成doc无问题。
      2021-01-22
      回复
登录 后发表内容
问题标签