列表

详情


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

A. 事务Ti已完成提交,该站点无需做任何操作

B. 事务Ti已完成提交,该站点应做REDO操作

C. 事务Ti未完成提交,该站点应做UNDO操作

D. 应向协调器询问以决定Ti的最终结果

参考答案: D

详细解析:

两阶段提交协议受如下两条规则的支配:1、只要有一个参与者撤销事务,协调者就必须做出全局撤销决定。2、只有所有参与者都同意提交事务,协调者才能做出全局提交决定。题干中,事务日志中只有<ready Ti>记录,说明已经完成了准备提交阶段,而没有<commit Ti >记录,说明该事务没有进入提交阶段,所以,需要向协调器去查询Ti的最终决定结果。

上一题