失败时flink如何处理打开的事务

时间:2021-06-26 09:22:22

标签: apache-flink

我使用的是 Flink 1.12.0,我有一个关于端到端一致性保证的 Flink 2PC 机制的问题。

在checkpoint开始时,开启一个事务,成功完成checkpoint后提交事务。

如果失败了怎么办?我认为打开的事务应该回滚?当事务回滚时?谢谢。

1 个答案:

答案 0 :(得分:1)

因为操作符和任务管理器分布在一个集群中,所以 Flink 必须确保所有组件都一致才能声明提交成功。正如您所说,Flink 使用 2 阶段提交协议,并带有预提交。正如 documentation

上所说,预提交是在检查点期间处理失败的关键 <块引用>

当检查点屏障通过所有操作符并且触发的快照回调完成时,预提交阶段结束。

相关问题