OceanBase 分布式事务中,第一阶段 Prepare 失败会触发什么逻辑?(

OceanBase 分布式事务中,第一阶段 Prepare 失败会触发什么逻辑?()
A. 所有参与者自动提交
B. 所有参与者统一回滚
C. 事务挂起等待人工处理
D. 仅失败节点回滚,其余提交

4 个赞

B. 所有参与者统一回滚

1 个赞

若任一参与者在 Prepare 阶段失败,协调者将无法收齐所有参与者的 prepare ack,因此不会进入 COMMIT 阶段。此时,整个事务将被统一回滚,以保证分布式事务的原子性。此外,文档中明确指出:“如果用户再次在当前 session(未断开)上执行 SQL 则会提示事务已经中断(无法继续)需要回滚,此时用户需要执行 ROLLBACK 来结束当前事务。” 这说明事务不会自动提交或部分提交,而是必须整体回滚。

B. 所有参与者统一回滚

对,失败就得回滚