全部产品
云市场

事务执行状态说明

更新时间:2020-03-16 12:53:45

分布式事务使用两阶段提交协议(Two-Phase Commit Protocol,简称 2PC)来保证事务执行的原子性。2PC 包含两个阶段:

  • 第一阶段,也称准备阶段。由事务发起者向各参与者发送请求,询问参与者是否准备好执行事务。
  • 第二阶段,也称提交阶段。在一阶段所有参与者都确认可以执行事务后,各参与者开始分别执行事务分支。所有分支都成功则事务数据提交成功,否则,所有分支都进行数据回滚操作。

2PC

事务在某一时间点可能处在以下状态之一:

  • 初始化:应用发起事务
  • 进行中
    • 准备中:一阶段操作中
    • 提交中:一阶段结束,正在二阶段的提交操作中
    • 回滚中:一阶段结束,因为某些业务失败,正在二阶段的回滚操作中
  • 已结束
    • 已提交:事务结束,事务执行的数据变更已提交
    • 已回滚:事务结束,事务执行的数据变更已回滚
  • 异常
    • 提交异常:一阶段结束,二阶段处理提交操作时出现异常
    • 回滚异常:一阶段结束,二阶段处理回滚操作时出现异常
    • 回查异常:一阶段结束,二阶段处理回查业务接口时出现异常