分布式事务的执行可能会涉及到多个站点上的数据操作,在两阶段提交协议中,当事务Ti的所有读写操作执行结束后,事务Ti的发起者协调器Ci向所有参与Ti的执行站点发送的消息,当收到所有执行站点返回的消息后,Ci再向所有执行站点发送消息。若参与事务Ti执行的某个站点故障恢复后日志中有记录,而没有记录,则( )。

2023-09-01

A. 事务Ti已完成提交,该站点无需做任何操作
B. 事务Ti已完成提交,该站点应做REDO操作
C. 事务Ti未完成提交,该站点应做UNDO操作
D. 应向协调器询问以决定Ti的最终结果

参考答案:B

系统故障恢复时,对于故障发生前已经提交的事务,应记入重做(Redo)队列;对于故障发生时尚未完成的事务,应记入撤销(Undo)队列。因为站点故障恢复后日志中已有记录,因此需要执行REDO操作。

相关推荐